Przejdź do treści stopki
NARZęDZIA EXCEL

Jak scalić komórki w Excelu: Wszechstronny przewodnik

Nauka porównywania dwóch kolumn w Excelu to jedno z najczęstszych zadań w codziennej analizie danych. Bez względu na to, czy celem jest wykrycie niezgodnych danych między dwoma listami zamówień, znalezienie wpisów, które pojawiają się w jednej kolumnie, a nie w drugiej, czy potwierdzenie, że dwie kolumny w Excelu zawierają te same dane, Microsoft Excel oferuje kilka metod, aby to zrobić. Ten przewodnik przechodzi najpierw przez najszybszą metodę, a następnie omawia wszystkie alternatywy porównywania kolumn, więc właściwe podejście jest zawsze w zasięgu ręki.

Najszybsza metoda: Wybierz różnice za pomocą Ctrl + \

Najszybszy sposób na porównanie dwóch sąsiadujących kolumn danych wiersz po wierszu wymaga jednego skrótu klawiszowego. Zaznacz obie kolumny danych, a następnie naciśnij Ctrl + \ (Control i ukośnik w tył). Excel natychmiast wybiera każdą komórkę w drugiej kolumnie, gdzie wartości różnią się od odpowiadającej wartości w pierwszej kolumnie. Zastosuj kolor wypełnienia lub kolor czcionki, gdy te komórki są nadal zaznaczone, a niezgodne dane natychmiast się wyróżniają.

Ten skrót uruchamia polecenie Idź do specjalnego > Różnice w wierszach w tle, więc to porównanie wiersz po wierszu działa na liczbach, ciągach tekstowych i datach bez żadnej formuły. Jest to idealne rozwiązanie dla szybkiej wizualnej kontroli przed spotkaniem lub terminem. Dla większych zbiorów danych, które wymagają stałego śledzenia, metody formatowania warunkowego i formuł poniżej są lepsze w dłuższym okresie i dobrze współpracują z technikami omówionymi w przewodnikach, jak wyróżniać duplikaty w Excelu i jak usuwać puste wiersze w Excelu.

Druga droga do tego samego rezultatu znajduje się na wstążce. Otwórz kartę Start, kliknij Znajdź i zaznacz po prawej stronie, wybierz Idź do specjalnego i wybierz Różnice w wierszach. Wszystkie różniące się komórki zostaną zaznaczone, gotowe do formatowania. Czytelnicy, którzy preferują pracę z formułami dla powtarzalnych wyników, mogą przejść bezpośrednio do metod formuły IF i EXACT poniżej, które tworzą trzecią kolumnę etykietującą każde dopasowanie i aktualizują się, gdy dane się zmieniają.

Jak Porównać Dwie Kolumny w Excelu: 7 Szybkich Metod dla Każdego Arkusza Kalkulacyjnego: Obraz 1 - Dwie kolumny wybrane, z wynikiem Ctrl+\ pokazującym różne komórki w kolorze żółtym

Metoda 2: Formatowanie Warunkowe do Wyróżniania Duplikatów lub Unikalnych Wartości

Formatowanie warunkowe oferuje sposób wyróżnienia za pomocą kodów kolorów, które automatycznie się odświeżają, gdy dane się zmieniają, co pomaga porównać dane wizualnie, gdy wartości się zmieniają. Aby wyróżnić duplikaty wartości, które pojawiają się w obu kolumnach:

  1. Wybierz obie kolumny.
  2. Na karcie Start kliknij Formatowanie Warunkowe.

  3. Wybierz Reguły Wyróżniania Komórek > Duplikaty Wartości.
  4. Wybierz styl kolorów i kliknij OK.

Każda wartość, która pojawia się w obu kolumnach, zostanie zacieniowana. Aby utworzyć nową regułę odwracającą logikę, wybierz Duplikat lub Unikat z listy rozwijanej w tym samym oknie dialogowym Reguły Wyróżniania Komórek, co wyeksponuje unikalne wpisy, które pojawiają się tylko w jednej kolumnie. Ta metoda wyróżnia się przy porównywaniu list posortowanych inaczej, ponieważ dokonuje dopasowań na podstawie wartości, a nie tej samej pozycji w wierszu. Powyższy przykład działa równie dobrze w wielu kolumnach, gdy więcej niż dwie wymagają sprawdzenia naraz.

Jak Porównać Dwie Kolumny w Excelu: 7 Szybkich Metod dla Każdego Arkusza Kalkulacyjnego: Obraz 2 - Okno dialogowe Duplikat włączone, z menu rozwijanym pokazującym zarówno opcje Duplikat jak i Unikat

Metoda 3: Prosta Formuła Równa

Dla odpowiedzi prawda lub fałsz, która porównuje dwa wiersze w wierszu, formuła jedno-komórkowa załatwia sprawę. W pustej kolumnie obok danych następująca formuła używa operatora równości:

=A2=B2

Naciśnij Enter i przeciągnij uchwyt wypełnienia w dół. Excel zwraca PRAWDA, gdy obie wartości się zgadzają, i FAŁSZ, gdy wartości się różnią. To podejście z użyciem znaku równości jest szybkie do przygotowania i łatwe do przefiltrowania później, ponieważ filtrowanie dla FAŁSZ oddziela każdą niezgodność w danych w ciągu sekund.

Jak Porównać Dwie Kolumny w Excelu: 7 Szybkich Metod dla Każdego Arkusza Kalkulacyjnego: Obraz 3 - Trzecia kolumna wypełniona wartościami PRAWDA i FAŁSZ obok dwóch porównanych kolumn

Metoda 4: Funkcja IF dla Czytelnych Etykiet

PRAWDZIWE i FAŁSZYWE działają, chociaż etykiety w języku potocznym lepiej się czytają w wspólnym raporcie. Funkcja IF zwraca niestandardowy tekst, który ułatwia skanowanie dopasowanych danych. Wpisz następujący przykład w pasku formuły:

=IF(A2=B2, "Dopasowane", "Brak dopasowania")

Przeciągnij tę samą formułę w dół kolumny, a każdy wiersz otrzyma jasną etykietę. Tekst w cudzysłowach może reprezentować cokolwiek, na przykład "OK" i "Sprawdź to", co czyni wynik przyjaznym dla kolegów, którzy nie pracują cały dzień z arkuszami kalkulacyjnymi. Funkcja IF łączy się z większością innych metod tutaj, gdy czytelny wynik pomaga natychmiast zidentyfikować dopasowania.

Jak Porównać Dwie Kolumny w Excelu: 7 Szybkich Metod dla Każdego Arkusza Kalkulacyjnego: Obraz 4 - Formuła IF na pasku formuły z kolumną wyników

Metoda 5: Funkcja EXACT dla Rozróżniania Wielkości Liter

Standardowe porównanie z użyciem znaku równości traktuje "Apple" i "apple" jako te same wartości. Gdy rozróżnianie wielkości liter ma znaczenie, na przykład przy porównywaniu kodów produktów lub haseł, funkcja EXACT wykonuje dokładne dopasowanie znak po znaku. To narzędzie do porównywania z rozróżnianiem wielkości liter:

=EXACT(A2, B2)

Funkcja porównuje obie komórki i zwraca TRUE tylko przy dokładnym dopasowaniu, uwzględniając wielkości liter. Opleć ją w funkcję IF dla etykiet: =IF(EXACT(A2,B2), "Dopasowane", "Różni się"). Excel zwraca FALSE, gdy tylko ciągi tekstowe różnią się wielkością liter, czego standardowe formuły z użyciem operatora równości by nie wychwyciły.

Metoda 6: VLOOKUP i XLOOKUP do Znajdowania Dopasowanych Wartości

Powyższe metody porównują dwie kolumny wiersz po wierszu. Aby odpowiedzieć na inne pytanie: "które wartości z Kolumny A pojawiają się w Kolumnie B bez względu na kolejność", funkcja wyszukiwania działa najlepiej. Funkcja VLOOKUP przeszukuje całą kolumnę, aby znaleźć dopasowania. W najnowszych wersjach programu Microsoft Excel, XLOOKUP jest najczystszą opcją, i w przeciwieństwie do VLOOKUP, może patrzeć w każdym kierunku:

=IF(ISNA(XLOOKUP(A2, B:B, B:B)), "Brak", "Znaleziono")

W starszych wersjach funkcja VLOOKUP połączona z ISNA robi to samo:

=IF(ISNA(VLOOKUP(A2, B:B, 1, FALSE)), "Brak", "Znaleziono")

Każda formuła przeszukuje całą drugą kolumnę pod kątem wartości w pierwszej kolumnie i informuje, czy istnieje. Odniesienie do komórki B:B używa stylu odniesienia bezwzględnego, który zakotwicza się do całej kolumny, dzięki czemu ta sama formuła kopiuje się czysto w dół każdego wiersza. To standardowe podejście do porównywania list klientów, faktur lub pozycji magazynowych, które zawierają te same dane w innej kolejności.

Metoda 7: COUNTIF do Liczenia Dopasowanych Wartości

COUNTIF odpowiada na pytanie, ile razy wartość z jednej kolumny pojawia się w drugiej. W pomocniczej kolumnie obok Kolumny A:

=COUNTIF(B:B, A2)

Wynik 0 oznacza, że wartość nie występuje w Kolumnie B, podczas gdy wynik 1 lub więcej potwierdza dopasowanie. Ta funkcja zwraca liczbę, która dobrze współgra z filtrem lub z formatowaniem warunkowym, aby zaznaczyć każdy zero, co pomaga utrzymać spójność w dwóch rozwijających się listach.

Metoda 8: Formuła Tablicowa do Zliczania Całkowitych Różnic

Dla jednej liczby podsumowującej, ile wierszy się różni, formuła tablicowa zlicza wszystkie niezgodności w obu kolumnach naraz:

=SUMPRODUCT(--(A2:A100<>B2:B100))

Zwraca całkowitą liczbę wierszy, gdzie wartości się różnią, co jest przydatne do szybkiej kontroli jakości przed głębszą analizą danych. Starsze wersje Excela mogą wymagać naciśnięcia Ctrl+Shift+Enter, aby potwierdzić to jako formułę tablicową.

Metoda Makra VBA do Powtarzalnych Porównań

Osoby, które przeprowadzają te same porównania co tydzień, mogą je zautomatyzować za pomocą krótkiego makra. Naciśnij Alt + F11, aby otworzyć edytor VBA, wstaw nowy moduł i wklej pętlę, która przechodzi przez obie kolumny i oznacza każdą niezgodność. Podstawowa wersja porównuje Kolumnę A i Kolumnę B oraz koloruje na czerwono każdą odmienną komórkę w Kolumnie B:

Sub CompareColumns()
    Dim i As Long
    For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
        If Cells(i, 1).Value <> Cells(i, 2).Value Then
            Cells(i, 2).Interior.Color = vbRed
        End If
    Next i
End Sub
Sub CompareColumns()
    Dim i As Long
    For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
        If Cells(i, 1).Value <> Cells(i, 2).Value Then
            Cells(i, 2).Interior.Color = vbRed
        End If
    Next i
End Sub
Sub CompareColumns()
    Dim i As Long
    For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
        If Cells(i, 1).Value <> Cells(i, 2).Value Then
            Cells(i, 2).Interior.Color = vbRed
        End If
    Next i
End Sub
$vbLabelText   $csharpLabel

Uruchom to za pomocą F5. Makro oszczędza czas, gdy ta sama struktura skoroszytu się powtarza, chociaż wymaga włączenia makr i zapisania pliku w formacie .XLSM. Dla bardziej skomplikowanych zadań, które mogą dotyczyć więcej niż jednej kolumny, metoda dla deweloperów na końcu tego przewodnika skaluje się dalej niż makra.

Typowe problemy i rozwiązywanie problemów

Kilka powtarzających się problemów sprawia ludziom problemy przy porównywaniu kolumn. Poniższe poprawki dotyczą tych, które najczęściej pomijają najlepsze przewodniki.

Ukryte spacje powodują fałszywe niezgodności. Końcowa spacja w jednej komórce sprawia, że "Smith" i "Smith " wyglądają na różne wartości, nawet gdy tekst czyta się tak samo. Owiń każdą stronę funkcją TRIM, aby usunąć dodatkowe spacje: =IF(TRIM(A2)=TRIM(B2), "Dopasowane", "Brak dopasowania").

Liczby przechowywane jako tekst. Gdy jedna kolumna zawiera rzeczywiste liczby, a druga liczby przechowywane jako tekst, porównanie się nie powiedzie, nawet jeśli cyfry są identyczne. Mały zielony trójkąt w rogu komórki sygnalizuje formatowanie tekstowe. Wybierz zakres, kliknij ikonę ostrzeżenia i wybierz Konwertuj na liczbę, aby to naprawić.

Puste komórki zniekształcają wynik. Puste komórki w dowolnej kolumnie mogą zostać zarejestrowane jako dopasowanie lub niezgodność, w zależności od formuły. Usuń puste komórki przed przeprowadzeniem porównania lub dodaj sprawdzenie takie jak =IF(AND(A2<>"",B2<>""), IF(A2=B2,"Dopasowane","Brak dopasowania"), "Puste").

Różne liczby wierszy. Jeśli dwie kolumny mają różne długości, metody oparte na formułach kończą się przed końcem krótszej kolumny. Metody wyszukiwania, takie jak XLOOKUP, radzą sobie z tym lepiej niż prosta formuła równości, ponieważ przeszukują całą pojedynczą kolumnę niezależnie od długości.

Data, które wyglądają tak samo, ale są przechowywane inaczej. Data wprowadzona jako tekst ("01/05/2025") zostanie zarejestrowana jako brak zgodności w stosunku do rzeczywistej wartości daty, nawet gdy oba wyświetlają się identycznie. Potwierdź, że obie kolumny używają prawdziwego formatu daty przez Formatowanie Komórek > Data przed porównaniem.

Formatowanie warunkowe podkreśla zbyt wiele. Gdy reguła wartości duplikowanych zacienia niemal wszystko, dwie listy prawdopodobnie dzielą wiele duplikatów z założenia. Przełącz się na opcję Unikatowa w tym samym oknie dialogowym reguł komórek, aby wyeksponować mniejszy zestaw prawdziwych wyjątków.

Dla Deweloperów: Programowe Porównanie Kolumn z IronXL

Zadania związane z arkuszami kalkulacyjnymi wykonywane według harmonogramu, przetwarzające wiele plików lub włączone do większej aplikacji lepiej obsługiwane są w kodzie niż ręcznie. IronXL czyta i porównuje kolumny Excel bezpośrednio w języku C# bez zainstalowanego Microsoft Office lub Interop na maszynie. Porównanie kolumn wymaga tylko kilku linii:

using IronXL;
WorkBook workbook = WorkBook.Load("data.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;
for (int row = 2; row <= sheet.RowCount; row++)
{
    var valueA = sheet[$"A{row}"].StringValue;
    var valueB = sheet[$"B{row}"].StringValue;
    string result = valueA == valueB ? "Match" : "No Match";
    sheet[$"C{row}"].Value = result;
}
workbook.SaveAs("compared.xlsx");
using IronXL;
WorkBook workbook = WorkBook.Load("data.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;
for (int row = 2; row <= sheet.RowCount; row++)
{
    var valueA = sheet[$"A{row}"].StringValue;
    var valueB = sheet[$"B{row}"].StringValue;
    string result = valueA == valueB ? "Match" : "No Match";
    sheet[$"C{row}"].Value = result;
}
workbook.SaveAs("compared.xlsx");
Imports IronXL

Dim workbook As WorkBook = WorkBook.Load("data.xlsx")
Dim sheet As WorkSheet = workbook.DefaultWorkSheet

For row As Integer = 2 To sheet.RowCount
    Dim valueA = sheet($"A{row}").StringValue
    Dim valueB = sheet($"B{row}").StringValue
    Dim result As String = If(valueA = valueB, "Match", "No Match")
    sheet($"C{row}").Value = result
Next

workbook.SaveAs("compared.xlsx")
$vbLabelText   $csharpLabel

Ta sama biblioteka obsługuje czytanie, pisanie, formatowanie i ocenę formuł w plikach XLSX, XLS i CSV, co czyni ją praktycznym rozwiązaniem dla bardziej złożonych zadań i przepływów danych, które przerastają ręczną pracę z arkuszem kalkulacyjnym. Zespoły, które automatyzują porównanie kolumn w ten sposób, zyskują przewagę konkurencyjną dzięki szybszemu, powtarzalnemu raportowaniu.

Aby uzyskać zorganizowane informacje na temat działania automatyzacji Excela w C# i .NET, odwiedź dokumentację IronXL i tutoriale.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej

Zespół wsparcia Iron

Jesteśmy online 24 godziny, 5 dni w tygodniu.
Czat
E-mail
Zadzwoń do mnie