Ich suche nach einer Formel für eine Google-Tabellenkalkulations- Markierungszelle, wenn der Wert in derselben Spalte dupliziert wird
Kann mir bitte jemand bei dieser Frage behilflich sein?
google-sheets
gs-conditional-formatting
user3331309
quelle
quelle
=COUNTIFS(A:A; A1; B:B; B1)>1
;
führt für mich zu einem Fehler "Ungültige Formel". Nur das Entfernen hat den Trick getan. Seien Sie auch vorsichtig: Die Zelle, die Sie als zweites Argument von angeben,countif
sollte die erste Zelle des von Ihnen ausgewählten Bereichs sein.=countif(B:B,B2)>1
. Dies ermöglicht eine ziemlich fortgeschrittene Formatierung, wenn absolute oder relative Zellreferenzen verwendet werden.Während die Antwort von zolley für die Frage vollkommen richtig ist, finden Sie hier eine allgemeinere Lösung für jeden Bereich sowie eine Erklärung:
Bitte beachten Sie, dass ich in diesem Beispiel den Bereich verwenden werde
A1:C50
. Der erste Parameter ($A$1:$C$50
) sollte durch den Bereich ersetzt werden, in dem Sie Duplikate hervorheben möchten!um Duplikate hervorzuheben:
Format
>Conditional formatting...
Apply to range
Sie unter den Bereich aus, auf den die Regel angewendet werden soll.Format cells if
Wählen SieCustom formula is
im Dropdown.Warum funktioniert es?
COUNTIF(range, criterion)
, vergleicht jede Zelle inrange
dercriterion
, die ähnlich wie Formeln verarbeitet wird. Wenn keine speziellen Operatoren angegeben sind, wird jede Zelle im Bereich mit der angegebenen Zelle verglichen und die Anzahl der Zellen zurückgegeben, die der Regel entsprechen (in diesem Fall der Vergleich). Wir verwenden einen festen Bereich (mit$
Vorzeichen), damit wir immer den gesamten Bereich anzeigen können.Der zweite Block gibt
INDIRECT(ADDRESS(ROW(), COLUMN(), 4))
den Inhalt der aktuellen Zelle zurück. Wenn dies in der Zelle platziert wurde, haben die Dokumente über die zirkuläre Abhängigkeit geweint. In diesem Fall wird die Formel jedoch so ausgewertet, als ob sie sich in der Zelle befindet, ohne sie zu ändern.ROW()
undCOLUMN()
wird die Zeile zurück Nummer und Spaltennummer der bestimmten Zelle sind. Wenn kein Parameter angegeben wird, wird die aktuelle Zelle zurückgegeben (dies ist 1-basiert, gibt beispielsweiseB3
3 fürROW()
und 2 für zurückCOLUMN()
).Dann verwenden wir:,
ADDRESS(row, column, [absolute_relative_mode])
um die numerische Zeile und Spalte in eine Zellreferenz zu übersetzen (wie zB3
. B. Denken Sie daran, während wir uns im Kontext der Zelle befinden, wissen wir nicht, welche Adresse oder welchen Inhalt sie haben, und wir benötigen den Inhalt, um ihn zu vergleichen). Der dritte Parameter kümmert sich um die Formatierung und4
gibt die Formatierungs-INDIRECT()
Likes zurück.INDIRECT()
Wird eine Zelle nehmen Bezug und Rück ihren Inhalt. In diesem Fall der Inhalt der aktuellen Zelle. Dann zurück zum Start,COUNTIF()
wird jede Zelle im Bereich gegen unsere testen und die Zählung zurückgeben.Der letzte Schritt besteht darin, dass unsere Formel einen Booleschen Wert zurückgibt, indem sie zu einem logischen Ausdruck gemacht wird :
COUNTIF(...) > 1
. Das> 1
wird verwendet, weil wir wissen, dass mindestens eine Zelle mit unserer identisch ist. Das ist unsere Zelle, die im Bereich liegt und daher mit sich selbst verglichen wird. Um ein Duplikat anzuzeigen, müssen wir zwei oder mehr Zellen finden, die mit unseren übereinstimmen.Quellen:
quelle
*
) und eine weitere Prüfung zu erstellen , also in Anlehnung an((COUNTIF(...))*(NOT(ISBLANK(INDIRECT(...current cell...)))))
. Das ist das Beste, was ich auf dem Handy machen kann. :)$A$1:$C$50
- entsprechend den betreffenden Spalten. Ich mag diesen allgemeineren Ansatz mehr als den von Zolley.Die Antwort von @zolley ist richtig. Fügen Sie einfach ein Gif und Schritte als Referenz hinzu.
Format > Conditional formatting..
Format cells if..
=countif(A:A,A1)>1
Feld hinzufügenCustom formula is
A
mit Ihrer eigenen Spalte.quelle
Ich habe genau das getan , was zolley vorgeschlagen hat, aber es sollte eine kleine Korrektur vorgenommen werden: Verwenden Sie "Benutzerdefinierte Formel ist" anstelle von "Text enthält" . Und dann funktioniert das bedingte Rendern.
quelle
Text Contains
Liste angezeigt wird , ist häufig , sodass ein Benutzer im Allgemeinen darauf klickt, um auf das Dropdown-Menü zuzugreifen.Markieren Sie Duplikate (in Spalte C):
Erläuterung: Das
C1
hier bezieht sich nicht auf die erste Zeile in C. Da diese Formel durch eine bedingte Formatregel ausgewertet wird,C1
bezieht sich das , wenn die Formel überprüft wird, um festzustellen, ob sie zutrifft, effektiv auf die Zeile, für die gerade ausgewertet wird Überprüfen Sie, ob die Hervorhebung angewendet werden soll. ( Also ist es eher soINDIRECT(C &ROW())
, als ob dir das etwas bedeutet! ). Im Wesentlichen wird bei der Auswertung einer Formel mit bedingtem Format alles, was sich auf Zeile 1 bezieht, anhand der Zeile ausgewertet, für die die Formel ausgeführt wird. ( Und ja, wenn Sie C2 verwenden, bitten Sie die Regel, den Status der Zeile unmittelbar unter der aktuell ausgewerteten Zeile zu überprüfen. )Das heißt also, zählen Sie Vorkommen von allem, was
C1
sich in der gesamten Spalte befindet (die aktuell ausgewertete Zelle),C
und wenn mehr als 1 davon vorhanden ist (dh der Wert hat Duplikate), dann: Wenden Sie die Hervorhebung an ( weil die Formel insgesamt bewertet zuTRUE
).Markieren Sie nur das erste Duplikat:
Erläuterung: Dies wird nur hervorgehoben, wenn beide
COUNTIF
s vorhanden sindTRUE
(sie erscheinen in einemAND()
).Der erste zu bewertende Term (der
COUNTIF(C:C, C1) > 1
) ist genau der gleiche wie im ersten Beispiel; Es istTRUE
nur, wenn alles, was drinC1
ist, ein Duplikat hat. ( Denken Sie daran, dass sich diesC1
effektiv auf die aktuelle Zeile bezieht, die überprüft wird, um festzustellen, ob sie hervorgehoben werden soll. )Der zweite Begriff (
COUNTIF(C$1:C1, C1) = 1
) sieht ähnlich aus, weist jedoch drei entscheidende Unterschiede auf:Es durchsucht nicht die gesamte Spalte
C
(wie die erste :),C:C
sondern startet die Suche ab der ersten Zeile:C$1
($
zwingt sie, die Zeile buchstäblich zu betrachten1
, nicht die Zeile, die ausgewertet wird).Anschließend wird die Suche in der aktuell ausgewerteten Zeile gestoppt
C1
.Endlich heißt es
= 1
.Dies ist nur dann der Fall,
TRUE
wenn sich über der aktuell ausgewerteten Zeile keine Duplikate befinden (dh, es muss das erste der Duplikate sein).In Kombination mit diesem ersten Term (der nur dann vorhanden ist,
TRUE
wenn diese Zeile Duplikate enthält) bedeutet dies, dass nur das erste Vorkommen hervorgehoben wird.Markieren Sie das zweite und weitere Duplikate:
Erläuterung: Der erste Ausdruck ist derselbe wie immer (
TRUE
wenn die aktuell ausgewertete Zeile überhaupt ein Duplikat ist).Der zweite Term ist genau der gleiche wie der letzte, außer dass er negiert ist: Er hat einen
NOT()
um ihn herum. Es ignoriert also das erste Auftreten.Schließlich nimmt der dritte Begriff die Duplikate 2, 3 usw. auf und
COUNTIF(C1:C, C1) >= 1
startet den Suchbereich in der aktuell ausgewerteten Zeile (dieC1
in derC1:C
). Dann wird nur dann ausgewertetTRUE
(Hervorhebung anwenden), wenn sich ein oder mehrere Duplikate darunter befinden (und dieses einschließen):>= 1
(Es darf>=
nicht nur so sein, dass>
das letzte Duplikat ignoriert wird).quelle
Ich habe alle Optionen ausprobiert und keine hat funktioniert.
Nur Google App-Skripte haben mir geholfen.
Quelle: https://ctrlq.org/code/19649-find-duplicate-rows-in-google-sheets
Oben in Ihrem Dokument
1.- Gehen Sie zu Tools> Skripteditor
2.- Legen Sie den Namen Ihres Skripts fest
3.- Fügen Sie diesen Code ein:
4.- Speichern und ausführen
In weniger als 3 Sekunden war meine doppelte Zeile farbig. Kopieren Sie einfach das Skript.
Wenn Sie nichts über Google Apps-Skripte wissen, können Ihnen diese Links helfen:
https://zapier.com/learn/google-sheets/google-apps-script-tutorial/
https://developers.google.com/apps-script/overview
Ich hoffe das hilft.
quelle