Hallo, ich habe eine Excel-Tabelle (erstes Tabellenblatt). Und ich habe für jedes Jahr eine Excel-Datei (z. B. Ex 2009, Ex 2010 …). In Spalte B des ersten Tabellenblattes steht eine Auftragsnummer. Diese erscheint in einer von 2 möglichen Tabellen Ex 2009, Ex 2010 … Jetzt soll geprüft werden, ob die Auftragsnummer in z. B. ex 2010 steht und, falls ja eine Wert aus einer anderen Spalte rückgeschrieben werden. Falls nein, steht die Auftragsnummer im Jahr zuvor, also Ex 2009, und es muss der Wert der anderen Spalte von dort rückgeschrieben werden. Wie mache ich das am Besten? Ich verwende Office 2010.
Hallo Bauigel,
ich kann Dir leider nicht helfen.
Grüße
Christin
Hallo,
ich würde in jede in Frage kommende Zelle eine Formel schreiben, die unter den betreffenden Bedingungen den Wert aus den vorjahres Tabellen übernimmt. Das ist müßig aber sicher.
Viel Erfolg
BFR
ich würde es mit einem sverweis machen
=WENN(ISTFEHLER(SVERWEIS(B1;‚Ex 2009‘!$A$1:blush:B$10;2;0))=WAHR;SVERWEIS(B1;‚Ex 2010‘!$A$1:blush:B$10;2;0);SVERWEIS(B1;‚Ex 2009‘!$A$1:blush:B$10;2;0))
diese Formel steht z.B. in C1 . In B1 steht die gesuchte Auftragsnummer, ‚Ex 2009‘!$A$1:blush:B$10 ist das Blatt und der Bereich, in dem gesucht wird, die gesuchte Nummer muss in diesem Fall in Spalte A stehen, ansonsten Bereich anpassen. In Spalte B steht der auszugebende Wert (sonst auch hier anpassen), ;2;0 die 2 sagt, dass der auszugebende Wert in der 2. Spalte steht (ausgehend von der Spalte mit der Rechnungsnummer) die 0 bedeutet, dass der Wert exakt der gesuchte sein muss
Hallo Rudi O.,
das klappt wunderbar. Super. Ich danke vielmals. Vielen Dank auch für alle anderen Antworten.
=WENN(ISTFEHLER(SVERWEIS(B1;‚Ex
2009‘!$A$1:blush:B$10;2;0))=WAHR;SVERWEIS(B1;‚Ex
2010‘!$A$1:blush:B$10;2;0);SVERWEIS(B1;‚Ex 2009‘!$A$1:blush:B$10;2;0))diese Formel steht z.B. in C1 . In B1 steht die gesuchte
Auftragsnummer, ‚Ex 2009‘!$A$1:blush:B$10 ist das Blatt und der
Bereich, in dem gesucht wird, die gesuchte Nummer muss in
diesem Fall in Spalte A stehen, ansonsten Bereich anpassen. In
Spalte B steht der auszugebende Wert (sonst auch hier
anpassen), ;2;0 die 2 sagt, dass der auszugebende Wert in der
2. Spalte steht (ausgehend von der Spalte mit der
Rechnungsnummer) die 0 bedeutet, dass der Wert exakt der
gesuchte sein muss
Hallo Bauigel,
leider reichen meine Makrokenntnisse dafür nicht.
Tut mir leid.
LG Liino
Ich denke, die einfachste Art ist die „Wenn“-Abfrage, im vorliegenden Fall zwei „wenn“-Abfragen verschachtelt im Sinne von:
Wenn Aufttragsnummer in 2009 existiert, dann gewünschten Wert eintragen, sonst anderen Wert. In die Formeln kriegt man die entsprechenden Bezüge durch anklicken der Felder in den geöffneten Dateien/Tabellen.
Gruß
Kp
Hallo Bauigel
Deine Anfrage übersteigt meine Kenntnisse in Excel.
Sicher findest Du anderweitig eine Lösung.
Gruss PAUL
Hallo,
kann leider nicht helfen.
Brandis
Hallo,
die Daten aus einer anderen Excel-Datei einzufügen, ist leicht, doch die Textstring-Operation für die Dateinamen fallen mir schwer. Tut mir leid, da kann ich nicht helfen.
VG, Mertel
Hallo,
warum packst du das ganze in drei verschiedene Excel-Dateien statt einfach alles in eine Excel-Datei mit drei Tabellenblättern?
Jedenfalls brauchst dafür ein paar Excel-Formeln und zwei Zwischenwerte.
Der erste Zwischenwert gibt an, ob und wo die Auftragsnummer in der Datei Ex2009 enthalten ist.
Der zweite Zwischenwert gibt an, ob und wo die Auftragsnummer in der Datei Ex2010 enthalten ist.
Die Auftragsnummer steht in meinen Beispielformeln in der Zelle B2, wobei die Zeile auch variieren kann. (Die Formeln verwenden die Spaltennummer absolut und die Zeilennummer relativ.)
Die Formel für den ersten Zwischenwert steht in Zelle C2:
=VERGLEICH($B2;[Ex2009.xls]Tabelle1!$A$2:blush:A$27;0)
Die Formel für den zweiten Zwischenwert steht in Zelle D2:
=VERGLEICH($B2;[Ex2010.xls]Tabelle1!$A$2:blush:A$27;0)
Diese Formeln liefern die Zeile, in der die Auftragsnummer gefunden wurde. Die Auftragsnummern stehen jeweils in Tabelle1, Bereich $A$2:blush:A$27 der Dateien Ex2009/Ex2010. (In diesem Beispiel jeweils 26 Werte.) Entscheidend ist hier die Excel-Formel VERGLEICH. Wenn die Auftragsnummer nicht gefunden wird, liefern die Formeln den Fehlerwert #NV.
Nun die letzte Formel, die Werte aus Ex2009/Ex2010 aus der Spalte B (Bereich $B$2:blush:B$27) holt:
=WENN(ISTFEHLER($C2);WENN(ISTFEHLER($D2);„nicht gefunden“;INDEX([Ex2010.xls]Tabelle1!$B$2:blush:B$27;$D2));INDEX([Ex2009.xls]Tabelle1!$B$2:blush:B$27;$C2))
Es erscheint nun der Wert aus Spalte B von Ex2009 oder Ex2010, oder - wenn die Auftragsnummer in keiner der beiden Dateien vorkommt - der Text „nicht gefunden“.
Ich habe das mit Excel 2003 ausprobiert, mit Excel 2010 sollte es genauso funktionieren. Für Excel 2010 wirst du wahrscheinlich die Dateiendung „.xlsx“ benötigen.
Viele Grüße,
Holger