Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Suchen/Ersetzen von Suchbegriff in Zellen

Suchen/Ersetzen von Suchbegriff in Zellen
16.10.2024 14:26:18
Tobo
Hallo zusammen,

ich war lange Zeit stiller Mitleser, was mir auch schon oft weitergeholfen hat aber jetzt stehe ich vor einem Problem bei dem ich nicht weiter weiß.

Ich habe von einem Lieferanten eine Liste bekommen mit Cross-Selling Artikeln. Diese Artikelnummern kann unser System aber nicht verarbeiten und ich benötige stattdessen eine Artikel-ID.

SHEET1:
In einer Spalte "Cross-Selling" stehen im Moment viele Artikelnummern mit Komma getrennt.

SHEET2:
Hier stehen in der ersten Spalte die Artikelnummern und in der zweiten Spalte die jeweilige Artikel-ID

=> Ich würde jetzt gerne in der Spalte Cross-Selling alle Artikelnummern mit den jeweiligen Artikel-IDs ersetzen. Jetzt steht dort z.B: 92602101010,92604246010,92604228010 als Artikelnummern und ich hätte dann später gerne 12379968, 12456975, 12456971

Beispieldatei: https://www.herber.de/bbs/user/172927.xlsx

Wäre super wenn ihr mir da weiterhelfen könnt!

Viele Grüße,
Tobias
Anzeige

19
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Suchen/Ersetzen von Suchbegriff in Zellen
16.10.2024 14:31:45
Onur
Zahlenkolonnen durch Kommas getrennt?
Excel ist doch kein Textverarbeitungsprogramm. Warum arbeitest du nicht besser mit Word ?
AW: Suchen/Ersetzen von Suchbegriff in Zellen
16.10.2024 15:02:45
BoskoBiati2
Hi,

=TEXTVERKETTEN(",";1;SVERWEIS(--TEXTTEILEN(C2;",");'Artikel-IDs'!A:B;2;0))


Gruß

Edgar
eine Version mit VBA
16.10.2024 15:39:40
Yal
Hallo Tobo,

Falls VBA in Frage käme
Sub Ersetzen()

Dim D As Object 'D wie Dictionary
Dim Z As Range 'Z wie Zelle
Dim Arr
Dim i As Long

Set D = CreateObject("Scripting.Dictionary")
'sammeln
With Worksheets("Artikel-IDs")
For Each Z In Range(.Range("A2"), .Cells(.Rows.Count, "A").End(xlUp))
D(CStr(Z.Value)) = CStr(Z.Offset(, 1).Value)
Next
End With
'ersetzen
With Worksheets("Produktdaten | Product data")
For Each Z In Range(.Range("C2"), .Cells(.Rows.Count, "C").End(xlUp))
Arr = Split(Z.Value, ",")
For i = LBound(Arr) To UBound(Arr)
If D.exists(Trim(Arr(i))) Then Arr(i) = D(Trim(Arr(i)))
Next
Z.Offset(1, 0).Value = Join(Arr, ",")
Next
End With
Set D = Nothing
End Sub


VG
Yal
Anzeige
Ich depp...
16.10.2024 15:41:38
Yal
Nicht
Z.Offset(1, 0).Value = Join(Arr, ",")

sondern
Z.Offset(, 1).Value = Join(Arr, ",")


war aber klar, oder?

VG
Yal
AW: eine Version mit VBA
16.10.2024 18:57:40
Piet
Hallo Yal

alle Achtung, dein Code ist wahnsinnig schnell. Hut ab vor deinem fachlichem Wissen!

Kleiner Fehler: ist auch im Clever Forum aufgefallen. - Es klappt nicht bei langem Zahlenstring!!
Excel macht aus der langen Zahlenreihe eine kurze Zahl mit Hochzahl bis zu 300.

Abhilfe ist diese Änderung in deinem Code: -> Z.Value = "'" & Join(Arr, ",")

mfg Piet
Anzeige
AW: eine Version mit VBA
16.10.2024 19:59:44
Tobo
Auch an dieser Stelle noch einmal vielen Dank an alle für die Hilfe!

Mit dem Hinweis von Piet geht jetzt auch noch Yals Formel bei mir. Die Lösungen von Onur und Edgar gingen schon vorher am Desktop-PC (der im Gegensatz zum Laptop Excel 365 hat)
AW: eine Version mit VBA
16.10.2024 20:07:31
Yal
Interessant. Wusste ich nicht. Bei dem Fall wo der Array nur aus 2 Elemente besteht, wird auch einen 123456,456789 ein Zahl gemacht und somit anders dargestellt. Also auf alle Fälle das einfache Hochkomma davor setzen.

Die Schnelligkeit kommt davon, dass bei Dictionary der Key bereits bei der Herstellung gehasht wird. Daher ist die Suche eines Key in einer Dictionary wesentlich schneller als die Suche in eine Excel Tabelle. Bei der Menge an Daten, wie hier, macht es sich bemerkbar.

Ich könnte leider den Code nicht testen, weil irgendwas in meinem Excel spackt. Ich muss wohl den Rechner neustarten.

VG
Yal
Anzeige
AW: Suchen/Ersetzen von Suchbegriff in Zellen
16.10.2024 15:13:38
peter
Hallo

Damit auch bei einem Fehler (sprich ein Artikel ist nicht bekannt) etwas angezeigt wird:


=TEXTVERKETTEN(",";WAHR;WENNFEHLER(SVERWEIS(--TEXTTEILEN(C2;",");'Artikel-IDs'!A:B;2;FALSCH);"Unbekannt"))


Peter
AW: Suchen/Ersetzen von Suchbegriff in Zellen
16.10.2024 15:23:38
Tobo
Hallo Edgar,

vielen Dank für die Hilfe! Wenn ich die Funktion anwenden möchte kommt leider ein "NAME?" Fehler. Es scheint so, dass mein Excel die Textteilen-Funktion nicht beherrscht und ich werde auf ein Excel Insider-Programm verwiesen.

Gibt es auch eine Möglichkeit/Workaround ohne Textteilen?


Viele Grüße,
Tobias
Anzeige
AW: Suchen/Ersetzen von Suchbegriff in Zellen
16.10.2024 15:45:19
BoskoBiati2
Hallo,

Excel gut - VBA gut, Excel Version 365 Business?

Da liegt wohl Einiges im Argen!

Tja, statt Textteilen: Text in Spalten!

Gruß

Edgar
AW: Suchen/Ersetzen von Suchbegriff in Zellen
16.10.2024 14:38:19
Tobo
Die Daten sind so vorgegeben vom Lieferanten.

Ich würde gerne den umständlichen Weg vermeiden die Texte in Spalten zu trennen -> Dann Sverweise machen -> Dann wieder zusammenfügen in die Kommaliste.

Was soll der Kommentar mit Word? Wie soll das da funktionieren?
Anzeige
AW: Suchen/Ersetzen von Suchbegriff in Zellen
16.10.2024 14:39:50
Onur
Keine Ahnung, aber deine Aufgabenstellung hat nix mit Tabellenkalkulation zu tun, sondern mit Textverarbeitung.
AW: Suchen/Ersetzen von Suchbegriff in Zellen
16.10.2024 14:44:16
Tobo
Schade das du wohl nichts zum Problem beizutragen hast. "Keine Ahnung" scheint da ganz gut zu passen...

Die Daten liegen in Excel vor und sowohl Sverweis als auch Suchen/Ersetzen sind ganz normale Excelfunktionen, nur weiß ich leider nicht wie ich diese hier korrekt anwenden kann. Deshalb habe ich mich ans Forum gewandt, dass mir jemand aufzeigt wie ich mit Hilfe der vorgegebenen Matrix im SHEET 2 die Werte in SHEET 1 ersetzen kann.
Anzeige
AW: Suchen/Ersetzen von Suchbegriff in Zellen
16.10.2024 14:50:38
Onur
Werde hier nicht frech, wenn du schon null Ahnung von Excel hast ! Wenn du hier wirklich Hilfe willst, solltest du nicht so arrogant hier auftreten !
SVerweis kann NIX mit in in TEXT versteckten kilometerlangen Zahlenkolonnen anfangen, sonst hättest selbst du es hingekriegt!
So ist es recht kompliziert (selbst mit Excel365) und Jemand müsste seine Freizeit dafür opfern, aber bestimmt nicht bei so einem arroganten Auftreten !
Anzeige
AW: Suchen/Ersetzen von Suchbegriff in Zellen
16.10.2024 14:58:37
Tobo
Oje, also früher war das hier wirklich ein anderer Umgangston. Ich glaube man sieht auch ganz gut wer in diesem Beitrag frech ist oder ein arrogantes Auftreten an den Tag legt...
AW: Suchen/Ersetzen von Suchbegriff in Zellen
16.10.2024 15:13:47
Onur
Nur damit du siehst, DASS es geht:

Userbild
Anzeige
AW: Suchen/Ersetzen von Suchbegriff in Zellen
16.10.2024 15:25:29
Tobo
Auch dir vielen Dank für die Lösung!
AW: Suchen/Ersetzen von Suchbegriff in Zellen
16.10.2024 15:27:15
Onur
TextTeilen ist eigentlich eine ganz normale Excel365-Funktion und freigegeben, also nicht nur für "Insider" zugänglich.
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige