Prüfen ob Wert schon vorkommt
Ich muss in einem Excel prüfen, ob ein bestimmter Wert bereits vorkommt
Hallo!
Ich muss prüfen, ob der Wert aus Zelle A2 (z.B. eine Rechnungsnummer) in einem anderen Tabellenblatt in Spalte A schon irgendwo vorkommt. Sollte er vorkommen, soll ich Zelle R2 "wurde verrechnet" stehen.
Optimal wäre es, wenn der Inhalt aus Zelle B2 gelöscht wird, wenn der Wert in dem anderen Tabellenblatt nicht vorkommt.
Welche Formel kann ich hier verwenden?
Lg. Andreas
Hallo!
Ich muss prüfen, ob der Wert aus Zelle A2 (z.B. eine Rechnungsnummer) in einem anderen Tabellenblatt in Spalte A schon irgendwo vorkommt. Sollte er vorkommen, soll ich Zelle R2 "wurde verrechnet" stehen.
Optimal wäre es, wenn der Inhalt aus Zelle B2 gelöscht wird, wenn der Wert in dem anderen Tabellenblatt nicht vorkommt.
Welche Formel kann ich hier verwenden?
Lg. Andreas
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 119532
Url: https://administrator.de/contentid/119532
Ausgedruckt am: 19.11.2024 um 17:11 Uhr
14 Kommentare
Neuester Kommentar
ich hab hier leider nur die englische version, aber das hier klappt:
Muss man eben beliebig erweitern
und die deutsche übersetzung dürfte auch nicht so schwer sein:
Die Formel in der Zelle benutzen, in der die Werte wurde verrechnet und wurde NICHT verrechnet stehen sollen
=IF(OR(A2=Sheet2!A1;A2=Sheet2!A2;A2=Sheet2!A3;A2=Sheet2!A4;A2=Sheet2!A5;A2=Sheet2!A6;A2=Sheet2!A7;A2=Sheet2!A8;A2=Sheet2!A9;A2=Sheet2!A10)=TRUE;"wurde verrechnet";"Wurde NICHT verrechnet")
Muss man eben beliebig erweitern
und die deutsche übersetzung dürfte auch nicht so schwer sein:
=WENN(ODER(A2=Sheet2!A1;A2=Sheet2!A2;A2=Sheet2!A3;A2=Sheet2!A4;A2=Sheet2!A5;A2=Sheet2!A6;A2=Sheet2!A7;A2=Sheet2!A8;A2=Sheet2!A9;A2=Sheet2!A10)=WAHR;"wurde verrechnet";"Wurde NICHT verrechnet")
Die Formel in der Zelle benutzen, in der die Werte wurde verrechnet und wurde NICHT verrechnet stehen sollen
deswegen müssen alle von hand eingetragen werden.
Würde ich angeben:
Sheet2!A:A wäre der rückgabewert 1; also nicht das, was ich möchte.
Du könntest es allerdings mit einem VB-Script versuchen, nur leider sind meine VBS-Kentnisse praktisch nicht vorhanden. Aber als Denkanstoss:
Würde ich angeben:
Sheet2!A:A wäre der rückgabewert 1; also nicht das, was ich möchte.
Du könntest es allerdings mit einem VB-Script versuchen, nur leider sind meine VBS-Kentnisse praktisch nicht vorhanden. Aber als Denkanstoss:
[zelle] = 0
SCHLEIFE bis 10000 oder mehr
[zelle] = [zelle] + 1
WENN (A2 = [zelle]) WAHR
R2 = "wurde berechnet"
gehe zu EOF
SONST
R2 = "wurde NICHT berechnet"
ENDE_WENN
ENDE_SCHLEIFE
:EOF
Hallo viewpoint!
Teil 1 (Prüfen, ob der Wert bereits im anderen Blatt steht) ist mit der folgenden Formel für R2 einfach:
Das Löschen des Wertes aus B2 lässt sich allerdings nur per VBA machen (zumindest, wenn, wie ich vermute, diese Zelle eine Konstante enthält) ...
Grüße
bastla
Teil 1 (Prüfen, ob der Wert bereits im anderen Blatt steht) ist mit der folgenden Formel für R2 einfach:
=WENN(ZÄHLENWENN('Anderes Blatt'!$A:$A;A2)>0;"wurde verrechnet";"")
Grüße
bastla
@Snowman25
Grüße
bastla
naja, du kannst doch als SONST-antwort angeben: B2=""
oder funktioniert das nicht?
Wie sind denn Deine Erfahrungswerte damit (denn einen Rat zu geben, von dem Du selbst nicht weißt, ob er überhaupt zielführend sein kann, hattest Du ja sicherlich nicht vor)?oder funktioniert das nicht?
Grüße
bastla
ohne VBA geht das nur, solange in die Zelle, die die 0 enthalten soll, keine manuellen einaben gemacht werden.
dazu auch noch in den zelleneigenschaften festlegen, dass eine 0 angezeigt wird
funktioniert aber nur, wenn R2 so aussieht:
wichtig ist hierbei das Leerzeichen im Falle keiner übereinstimmung
Du meintest doch für B2 den gleichen Bereich wie für R2, oder?
=WENN(R2=" ";"0";"")
funktioniert aber nur, wenn R2 so aussieht:
=WENN(ZÄHLENWENN(Sheet2!$A:$A;A2)>0;"wurde verrechnet";" ")
Du meintest doch für B2 den gleichen Bereich wie für R2, oder?
Hallo viewpoint!
Wie erwähnt, wenn ein konstanter Wert in der Zelle steht, kannst Du diesen nicht per Formel "löschen" - dazu müsste die Zelle B2 selbst eine Formel der Art
enthalten.
Allerdings ist das ja eher eine Frage der Optik, denn wenn der Inhalt der Zelle B2 weiterverarbeitet werden soll, kannst Du natürlich wieder auf das "ZÄHLENWENN()" zurückgreifen und etwa folgende Formel zur Berechnung von 3% des Inhaltes von B2 verwenden:
Grüße
bastla
[Edit] @Snowman25: Der Umweg über R2 ist nicht nötig - die Abfrage kann, wie gezeigt, nach dem selben Schema erfolgen; abgesehen davon kann ich den Sinn des Leerzeichens für R2 nicht erkennen: wenn die Zelle leer sein soll, dann braucht sie auch kein Leerzeichen zu enthalten, sondern einfach "". [/Edit]
Wie erwähnt, wenn ein konstanter Wert in der Zelle steht, kannst Du diesen nicht per Formel "löschen" - dazu müsste die Zelle B2 selbst eine Formel der Art
=WENN(ZÄHLENWENN('Anderes Blatt'!$A:$A;A2)=0;Konstante;0)
Allerdings ist das ja eher eine Frage der Optik, denn wenn der Inhalt der Zelle B2 weiterverarbeitet werden soll, kannst Du natürlich wieder auf das "ZÄHLENWENN()" zurückgreifen und etwa folgende Formel zur Berechnung von 3% des Inhaltes von B2 verwenden:
=WENN(ZÄHLENWENN('Anderes Blatt'!$A:$A;A2)=0;B2*3%;0)
bastla
[Edit] @Snowman25: Der Umweg über R2 ist nicht nötig - die Abfrage kann, wie gezeigt, nach dem selben Schema erfolgen; abgesehen davon kann ich den Sinn des Leerzeichens für R2 nicht erkennen: wenn die Zelle leer sein soll, dann braucht sie auch kein Leerzeichen zu enthalten, sondern einfach "". [/Edit]