Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1896to1900
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zeichentrennung Zelle

Zeichentrennung Zelle
28.08.2022 13:17:20
Elsi
Hallo Leute,
hab eine kurze Frage bezüglich VBA. Ich würde gerne eine Datei einlesen und Daten aus der Spalte B mit einem anderen Tabellenblatt vergleichen. Leider stehen in der eingelsenen Datei in einigen Zellen mehrere Daten drin, die durch ein "," oder "/", ";", " " getrennt sind. Wie kann ich diese Zellen, die mehrere Daten in einer Zelle haben mit einer anderem Tabellenblatt vergleichen ? Damit alle Werte miteinander verglichen werden ?
Kann mir hier jemand weiterhelfen ?
Freundliche Grüße
Elisa

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeichentrennung Zelle
28.08.2022 13:22:56
ralf_b
du kannst nach dem Wert suchen z.b. mit instr()
AW: Zeichentrennung Zelle
28.08.2022 13:37:09
Elsi
Wenn ich den Wert suche, mit instr() , wie kann ich dann die Zelle mit dem Wert vergleichen.
Bsp: Ich möchte Tab1 mit Tab 2 vergleichen. Tab 2 hat mehrere Zellen die in einer Zelle mehre Daten haben. Bsp: Tab2.Zelle1( 7858/5894/7895)
Wie kann ich jetzt Zelle 1 alle 3 Werte mit Zelle 1 von Tab1 vergleichen ? Geht das mit IntStr
AW: Zeichentrennung Zelle
28.08.2022 13:50:04
ralf_b
instr() ist eine Funktion ,die innerhalb eines Textes einen Anderen sucht. wert aus tab1 in Zelle tab 2 suchen. Damit benötigst du keine Zerlegung in einzelne Werte.
oder du nimmst die Range.find() methode mit dem parameter lookat:=xlpart
Anzeige
AW: Zeichentrennung Zelle
28.08.2022 13:47:38
Oberschlumpf
Hi Elisa,
du fragst, ob das mit IntStr geht - erst mal - nö, denn richtig heißt es INSTR() und nicht IntStr...daher, lieber vor dem Absenden alles auf TipPfehler kontrollieren.
Gegenfrage:
Hast du dir denn schon die vielen Hilfetexte zu INSTR() durchgelesen, in denen unter anderem beschrieben wird, dass INSTR() dazu genutzt wird, Textteile innerhalb eines Textes zu suchen?
Also, ja, mit INSTR() könnte man deine Aufgabe lösen.
Ich selbst würd allerdings mit Array + Split arbeiten (is nur ein anderer Ansatz als mit INSTR() ) - aber dazu benötige zumindest ich von dir per Upload eine Bsp-Datei mit ausreichend vielen Bsp-Daten in den richtigen Zellen.
Ciao
Thorsten
Anzeige
AW: Zeichentrennung Zelle
28.08.2022 13:57:27
Elsi
Vielen Dank für die Rückmeldung.
Leider noch nicht, muss ich noch machen.
Verstehe nicht ganz wie du das meinst mit Array Split.
Unten findest du eine Bsp-Datei
Datei :https://www.herber.de/bbs/user/154845.xlsx
Freundliche Grüße
Elsi
AW: Zeichentrennung Zelle
28.08.2022 14:11:49
Oberschlumpf
Hi,
du schreibst:
"Ich würde gerne eine Datei einlesen und Daten aus der Spalte B mit einem anderen Tabellenblatt vergleichen."
ähhh?
In deiner Bsp-Datei fehlt entweder anderes Tabellenblatt oder....eine (andere) Datei mit anderem Tabellenblatt.
Auf jeden Fall aber gibt es in deiner Bsp-Datei keine weitere Spalte, wo es Sinn macht, die mit Spalte B zu vergleichen, wie du es gern hättest.
Wer eine qualifizierte Antwort erwartet, muss erst mal eine qualifizierte Frage stellen.
Sorry, wenn das "hart" rüberkommt - aber wie sollen wir dir denn helfen können, wenn du nicht genau so überlegt handelst, wie wir es immer wieder versuchen?
Ciao
Thorsten
Anzeige
AW: Zeichentrennung Zelle
28.08.2022 16:57:21
Elsi
Sorry, habe jetzt die andere Dateie hochgeladen. Ich wollte die Werte aus Main- Datei Spalte B mit der Test-Datei(Die ich schon hochgeladen habe) Spalte B vergleichen. Wenn diese gleich sind, dann soll er das was in der Spalte C, D, E(Der Test-Datei) ist in die Spalte von Main-Datei C, D, E einfügen. Das andere Problem habe ich schon am Anfang erläutert.
Freundliche Grüße
Elsi
Andere Datei:
https://www.herber.de/bbs/user/154849.xlsx
AW: alternativ zu VBA ...
28.08.2022 18:00:41
neopa
Hallo Eisi,
... könntest Du das von Dir angestrebte auch mit einer Formellösung oder mit Power Query (PQ) erledigen. Letztere steht zwar in Deiner Excelversion nicht automatisch zur Verfügung, kannst Du aber von der MS-Seite kostenfrei downladen und nachinstallieren.
Deine Daten der (zuerst eingestellten) Testdatei hab ich der einfachen Übersichtlichkeit halber in einem weiteren Tabellenblatt der Ergebnisdatei eingefügt ( es geht natürlich auch ohne dies)
Die Ermittlung sowie das Ergebnis der PQ-Lösung (mehr dazu sieh mal z.B. hier: https://excelhero.de/power-query/power-query-ganz-einfach-erklaert/) kannst Du hier: https://www.herber.de/bbs/user/154850.xlsx sehen.
Gruß Werner
.. , - ...
Anzeige
AW: alternativ zu VBA ...
28.08.2022 18:28:59
Elsi
Hi, ich weiß nicht ob die Antwort angekommen ist, wird mir nicht angezeigt.
Aber das Sieht schon so aus, wie ich es benötige. Würde es gerne mit einem Makro machen.
Das wa sdu mir geschickt hast, kenn ich nicht, aber ich werde es mir anschauen.
Gruß Elsi
AW: gerne owT
28.08.2022 18:45:57
neopa
Gruß Werner
.. , - ...
AW: Zeichentrennung Zelle
28.08.2022 21:00:17
Daniel
Hi
Im Prinzip könnte man sowas mit dem SVErweis mit Jokerzeichen lösen und als Suchbegriff "*ID-Nummer*" verwenden. Das wird hier aber problematisch, weil deine IDs unterschiedlich lang sind und "345" auch in "123456" enthalten ist.
Das kann man dadurch lösen, dass man das Trennzeichen mit einbezieht und das Trennzeichen auch immer an Anfang und Ende verwendet, denn "/345/" ist in "/123456/" nicht enthalten.
Du müsstest deine Quelldatei erstmal etwas aufbereiten, ich beschreibe dir, wie es von Hand geht, das kannst du dann mit VBA relativ einfach mit Hilfe des Rekorders nachbauen, es ist im.Prinzip nur Spalten einfügen und zwei statische Formeln einfügen, also nix wildes.
1. füge in der Quelldatei eine Hilfsspalte nach der Spalte B ein. Das wird keine Wechsel-,Orgie, weil du jedes mögliche Trennzeichen gegen das Standardtrennzeichen tauschen musst:, also:

="/"&Wechseln(Wechseln(Wechseln(B2;" ";"/");";";"/");",";"/")&"/"
Ich habe es hier mal bei drei belassen (Leerzeichen, Semikolon, Komma) weitere kannst du hinzufügen.
2. die Datenübernahme gestaltet sich dann einfach mit dem SVerweis nach dieser Form:

=SVerweis("*/"&B2&"/*";'[Quelldatei.xlsx]Tabelle1'!$C:$F;2;FALSCH)
So würde ich das machen, wenn die Datenmenge nicht allzugroß ist, bei 10.000 Zeilen könnte das ein bisschen dauern.
Gruß Daniel
Anzeige
AW: Zeichentrennung Zelle
30.08.2022 05:59:07
Elsi
Hi, vielen Dank.
Ich benötige es als Makro. Kann ich das so mit dem Makrorecorder aufnehmen ?
Wenn ich Werte die mit mehreren Zeichen getrennt sind mit einem Wert vergleichen möchte, muss ich diese nacheinanderer Spliten ?
AW: Zeichentrennung Zelle
30.08.2022 09:48:33
Daniel
Hi
im großen und ganzen ja, das kannst du zum größten Teil mit dem Recorder aufzeichnen.
ist ja nur Spalte einfügen und zwei Formeln einfügen.
das einzige was du nicht aufzeichnen kannst, ist die Ermittlung der letzten Zeile für den Zellbereich, in den die Formeln müssen, aber das sollte kein Hexenwerk sein, das findest du in vielen Beispielcodes hier im Forum.
Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige