Microsoft Office Forum [ www.Office-Fragen.de ] >> READONLY <<
Microsoft Office 2003-2019 => Excel => Thema gestartet von: OsanSchwaller am August 13, 2015, 11:25:55 Vormittag
-
Hallo :)
In der Hoffnung das ich in diesem Forum eine Antwort auf meine Frage finde, habe ich mich soeben mal angemeldet.
Meine Frage ist folgende: Ich habe ein Excel Sheet in dem ich den Inhalt einer Internetseite eingefügt habe. Nachdem diese Internetseite leider keine Tabellen verwendet hat, stellt Excel den Inhalt zwar dar, aber nicht tabellarisch. Ich möchte folgendes tun: In einem weiteren Excel Sheet habe ich eine Zelle und in der darunterliegenden möchte ich den Wert aus der Zelle unter der Zelle in der der Wert steht nach dem ich suche übernehmen.
Wo ich das ganze jetzt so schreibe, merke ich das es nicht einfach ist das schriftlich zu erklären, deshalb werde ich am besten einfach mal 2 Bilder machen um zu zeigen, nach welcher Zelle ich suchen will und welchen Inhalt ich dann kopieren möchte:
(http://abload.de/img/unbenannt17zs7j.jpg) (http://abload.de/image.php?img=unbenannt17zs7j.jpg)
(http://abload.de/img/unbenannt2g9ssk.jpg) (http://abload.de/image.php?img=unbenannt2g9ssk.jpg)
Grün steht für den Zelleninhalt nachdem ich suchen möchte und rot für den den ich kopieren will.
Ich hoffe ihr könnt mir helfen, ich bin leider mit VBA überhaupt nicht bewandert und ich glaube mit einer Formel lässt sich das nicht lösen, oder? Die Zellen sind übrigends nicht immer in dieser Reihenfolge angeordnet.
Grüße, Osan
-
Hola,
das zu suchende Wort steht in I1:
=INDIREKT("A"&VERGLEICH(I1;A1:A100;0)+1)
Gruß,
steve1da
-
Ja, aber was mache ich, wenn die Zellenanordnung anders ist? Ich möchte ungerne immer erst schauen, in welcher Zeile der Wert steht nach dem ich suchen möchte? ???
-
Hola,
schade dass du es nicht ausprobiert hast.
Die Zeile in der das Wort ist, ist völlig egal - ich suche nach der Übereinstimmung des Wortes und gebe den Wert darunter aus.
Gruß,
steve1da
-
Ich habe es ausprobiert, keine Sorge ;)
Nur leider funktioniert es bei mir noch nicht so ganz, weil 1. mein Excel auf Englisch ist und ich daher erst mal die englische Funktion finden muss und 2. mein Array sich in einem anderen Sheet befindet. Bin gerade noch am probieren, ist ja umso besser, wenn das so funktioniert :)
-
Hola,
ok ;)
Sollte dann wohl so lauten:
=INDIRECT("A"&MATCH(I1,Sheet1!A1:A100,0)+1)
Sheet1 musst du natürlich ersetzen.
Gruß,
steve1da
-
Vielen Dank für die englische Übersetzung gleich noch hinterher :)
Habe die Formel jetzt so angepasst, wie ich denke das es passt, kommt leider 0 heraus.
=INDIRECT("A"&MATCH(A1;Sheet1!A1:A100;0)+1)
Ich möchte nach dem Wert in Zelle A1 im Sheet1 suchen und den Wert darunter übernehmen... Müsste doch eigentlich passen.
Sorry wenn ich mich gerade etwas doof anstelle :/
-
Hola,
wenn 0 rauskommt, dann findet die Formel den Wert in Spalte A von Sheet1 zwar, allerdings ist die Zelle darunter leer.
Gruß,
steve1da
-
Komisch, es kommt tatsächlich immer 0 heraus... kann das daran liegen, das es sich um einen String handelt, oder hat das damit nichts zu tun?
-
Hola,
das ist eigentlich egal.
Ohne die Tabelle oder eine Beispieltabelle zu sehen, wird das Fehlersuchen allerdings mühselig.
Gruß,
steve1da
-
@ Steve
probier's mal aus, es ist nicht egal! (Ich war auch kurz davor, deine Antwort zu schreiben, habe es dann aber ausprobiert ...)
-
Die Tabelle ist exakt die, die ich in den 2 Bildern im Anfangspost angehängt habe.
Was muss ich denn tun, damit es den String kopiert?
-
Hola,
klassischer Fehler :) Ich habe den Tabellenblattnamen nicht ins Indirekt gepackt. Er sucht dann auf dem aktuellen Blatt :D
=INDIREKT("Sheet1!"&"A"&VERGLEICH(A1;Sheet1!A1:A100;0)+1)
bzw.
=INDIRECT("Sheet1!"&"A"&MATCH(A1;Sheet1!A1:A100;0)+1)
Gruß,
steve1da
-
hi steve1da, wenn du Sheet1 hart in INDIREKT() schreibst, warum dann überhaupt INDIREKT()...? wieso nicht INDEX()...? habe ich was übersehen..?
-
Hola,
irgendwie vergess ich Index immer :)
=INDEX(Sheet1!A:A;VERGLEICH(A1;Sheet1!A:A;0)+1)
Gruß,
steve1da
-
Ich danke euch, es funktioniert perfekt :)
Da spare ich mir einiges an Arbeit.