Suchen eines Einzelvorkommenswerts in einer Spalte (Microsoft Excel)
Bill hat eine Spalte mit Zahlen, die in aufsteigender Reihenfolge sortiert sind. Es gibt viele doppelte Werte in der Spalte, was in Ordnung ist. Er muss jedoch die erste Instanz einer Zahl in der Spalte suchen, die kein Duplikat enthält. Bill fragt sich, ob es eine Formel gibt, die den ersten Wert für ein einzelnes Vorkommen in der Spalte identifizieren kann.
Es gibt einige Möglichkeiten, wie die verzweifelte Antwort gefunden werden kann. Eine Möglichkeit besteht darin, rechts neben Ihren Zahlen eine Hilfsspalte hinzuzufügen. Angenommen, Ihre erste Nummer befindet sich in Zelle A2, können Sie in Zelle B2 Folgendes eingeben:
=IF(AND(A1<>A2,A3<>A2),"single","")
Kopieren Sie die Formel so viele Zellen wie nötig nach unten, und Sie können die erste Zelle mit einem einzelnen Wert in Spalte A leicht erkennen.
Sie können auch die folgende Formel in Zelle B2 verwenden:
=COUNTIF($A:$A,$A2)
Kopieren Sie es so weit wie nötig nach unten. Die Formel zeigt an, wie oft der Wert in Spalte A in Spalte A vorkommt. Anschließend verwenden Sie die folgende Formel, um den ersten Wert zu bestimmen, der einmal in Spalte A vorkommt:
=INDEX($A:$A,MATCH(1,$B:$B,0))
Wenn eine Hilfsspalte nicht möglich ist, können Sie sich auf Arrayformeln verlassen.
In beiden Fällen wird der erste Wert angezeigt, der einmal auftritt:
=INDEX(A2:A999,MATCH(1,COUNTIF(A2:A999,A2:A999),0)) =SMALL(IF(COUNTIF(A2:A999,A2:A999)=1,A2:A999,""),1)
Denken Sie daran, dass dies Array-Formeln sind. Dies bedeutet, dass Sie sie mit Strg + Umschalt + Eingabetaste eingeben müssen. Wenn der Bereich keinen einzelnen Wert enthält, gibt die Formel einen # N / A-Fehler zurück.
Wenn Sie wissen möchten, welche Zeile den ersten Wert für ein einzelnes Vorkommen enthält, ist die folgende Array-Formel hilfreich:
=MATCH(1,COUNTIF(A2:A999,A2:A999),0)+1
Beachten Sie, dass die Formel die Zellen A2: A999 überprüft. Da die Zeile A1 übersprungen wird, ist am Ende der Formel „+1“ erforderlich. Wenn Sie keine Kopfzeile haben oder Ihre Daten in einer anderen Zeile als Zeile 2 beginnen, sollten Sie die Formel entsprechend anpassen.
Wenn Sie keine Formel verwenden möchten, können Sie die Werte für ein einzelnes Vorkommen in Ihren Daten mithilfe der bedingten Formatierung hervorheben.
Befolgen Sie diese Schritte:
-
Wählen Sie die Zellen aus, die Sie überprüfen möchten.
-
Klicken Sie auf der Registerkarte Start des Menübands in der Gruppe Stile auf die Option Bedingte Formatierung. Excel zeigt eine Palette von Optionen für die bedingte Formatierung an.
-
Wählen Sie Zellenregeln hervorheben. Excel zeigt noch mehr Optionen an.
-
Wählen Sie Doppelte Werte. Excel zeigt das Dialogfeld Doppelte Werte an. (Siehe Abbildung 1.)
-
Wählen Sie in der Dropdown-Liste links im Dialogfeld die Option Eindeutig.
-
Verwenden Sie die Dropdown-Liste links im Dialogfeld, um anzugeben, wie die Werte für einzelne Vorkommen formatiert werden sollen.
-
OK klicken.
Zu diesem Zeitpunkt werden Ihre Werte für das einmalige Auftreten wie in Schritt 6 angegeben formatiert und können leicht erkannt werden. Wenn Sie nur die Werte für ein einzelnes Vorkommen anzeigen möchten, können Sie nach dem Anwenden des bedingten Formats die Filterung verwenden, um die Aufgabe auszuführen.
Wenn Sie einen Makroansatz bevorzugen, können Sie ein Makro wie das folgende verwenden:
Sub FirstUnique() Dim c As Range Dim sMsg As String Dim bLone As Boolean If Selection.Cells.Count > 1 Then For Each c In Selection.Cells bLone = False If c.Row = 1 Then If c <> c.Offset(1, 0) Then bLone = True Else If c <> c.Offset(-1, 0) And _ c <> c.Offset(1, 0) Then bLone = True End If If bLone Then sMsg = "First single-occurrence value found " sMsg = sMsg & "at " & c.Address & vbCrLf sMsg = sMsg & "Value: " & c MsgBox sMsg Exit For End If Next c Else sMsg = "You must select at least 2 cells." MsgBox sMsg End If End Sub
Um das Makro zu verwenden, wählen Sie die Zellen aus, die Sie überprüfen möchten, und führen Sie es dann aus. Das Makro zeigt die Adresse und den Wert des ersten Wertes für ein einzelnes Vorkommen in Ihrer Auswahl an.
Sie sollten beachten, dass alle in diesem Tipp bereitgestellten Lösungen (mit Ausnahme des Ansatzes der bedingten Formatierung) erfordern, dass die auszuwertenden Werte genau so sortiert werden, wie Bill dies angegeben hat. Wenn Ihre Werte nicht sortiert sind, müssen Sie sie entweder zuerst sortieren oder einen völlig anderen Ansatz für Ihre Ergebnisse wählen.
ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.
Dieser Tipp (3383) gilt für Microsoft Excel 2007, 2010, 2013 und 2016.