Stellen Sie zwei Excel-Formeln zusammen

0

Ich habe einige bestimmte Daten in Sheet1 und einige andere Daten in Sheet2.

Ich muss einen bestimmten Wert (Var1) von Sheet1 vergleichen und einen bestimmten Wert von Sheet2 zurückgeben und eine Ausgabe für denselben zurückgeben. Ich habe das mit dieser Formel erfolgreich gemacht

=IF(COUNTIF(Sheet2!A:A, A2), "Yes", "No")

Blatt1

+------+------+---------+---------+
| var1 | var2 | result1 | result2 |
+------+------+---------+---------+
|      |      |         |         |
| abc  |  123 | yes     | yes     |
|      |      |         |         |
| bcd  |  234 | yes     | no      |
|      |      |         |         |
| cde  |  456 | no      | blank   |
+------+------+---------+---------+

Sheet2

+-------+-------+-------+
| List1 | List2 | List3 |
+-------+-------+-------+
| abc   |   123 |       |
| bcd   |       | 123   |
| def   |       |       |
+-------+-------+-------+

Ich muss var1 in Liste1 und var2 in Liste2 und Liste3 suchen

Ich möchte einen anderen Wert (Var2) in Sheet2 nur vergleichen, wenn das vorherige Ergebnis "Ja" lautet, was mit einer IF-Funktion leicht erreicht werden kann. Der Haken ist jedoch, dass nur Werte aus bestimmten Zeilen von Sheet2 verglichen werden sollten. Dabei sollte es sich um Plus- (+) und Minus- (-) 2 Zeilen handeln, von denen aus Var1 in Sheet2 gefunden wurde.

Ich beherrsche VBA nicht, habe mich aber in Excel-Formeln versucht.

Pratik
quelle
Bitte ziehen Sie in Betracht, ein Datenelement, das Sie haben, in Frage zu stellen (sowohl für Blatt 1 als auch für Blatt 2). Wählen Sie dann eine bestimmte Zelle in Tabelle 1 aus und geben Sie ein Beispiel an, wie die Ausgabe am Ende aussehen soll.
Wie oft kann der Wert von A2 in Sheet2 angezeigt werden? Ist es auch so, dass +/- 2 Zeilen von var1 der look_up_range für Ihr 2. Kriterium sein sollten?
@AndreSilva Enthält ein Beispiel
@ 666bytes A2 ist der Schlüssel des Arbeitsblatts und in beiden Fällen eindeutig.
@ 666 Bytes Ja. +/- 2 Zeilen von var1 sollten der look_up_range für Ihr 2. Kriterium sein

Antworten:

0

Das hat Spaß gemacht, durchzupuzzeln :)

Anhand Ihres Beispiels habe ich diese Funktion in C2(unter 'result1') eingefügt und sie mit einem Array ausgefüllt:

=IF(COUNTIF(Sheet2!A:A,A2),"Yes","No")

Und für D2unter 'result2':

=IF(C2="No","No",IF(COUNTIF(INDIRECT("Sheet2!C"&MAX((MATCH(A2,Sheet2!A:A)-2),1)&":C"&(MATCH(A2,Sheet2!A:A)+2)),B2),"Yes","No"))

Wieder Array füllen Sie es nach unten, und es sollte funktionieren :)

Collin Grady
quelle
Klappt wunderbar!!! Vielen Dank!! Viel gelernt!!
Pratik
Schön gemacht. Ich versuche jedoch, indirekt zu vermeiden, wenn dies möglich ist, da Sie Ihre Formel aktualisieren müssen, wenn Sie beispielsweise eine Spalte links einfügen oder Ihr Arbeitsblatt umbenennen.
vielleicht könnten wir stehlen
0

Sie können OR () verwenden und vergleichen, wenn Sie Plus und Minus haben. Etwas wie das:

=IF(OR(A1="+";A1="-");"Ok";"")

Dann können Sie "Ok" für Ihre Formel ändern.

=IF(OR(A1="+";A1="-");=IF(COUNTIF(Sheet1!C:C, A2), "Yes", "No");"")

Ist das was du brauchst?

Makah
quelle
Meine Frage war ziemlich vage, tut mir leid. Bearbeitet es für mehr Klarheit.
0

Versuchen: =IF(C2<>"Yes","",IF(COUNTIF(OFFSET(Sheet2!$B$1:$C$5,MAX(0,MATCH(A2,Sheet2!A:A,0)-3),0),B2)>0,"Yes","No"))

Ich gehe davon aus, dass:

  • var1ist ein eindeutiger Schlüssel, wie Sie sagten. Andernfalls stimmt dies nur mit dem ersten Vorkommen überein.
  • Sie möchten var2in beiden list1 und übereinstimmen list2. Andernfalls sollten Sie das Suchfenster auf einschränken $B$1:$B$5. Wenn rechts weitere Listen angezeigt werden, fügen Sie dem Suchfenster einfach Spalten hinzu.

Lassen Sie mich wissen, wenn Sie Fragen dazu haben.

Vielleicht könnten wir AVan stehlen
quelle
Klappt wunderbar!!! Vielen Dank!! Viel gelernt!!
Pratik