Live-Forum - Die aktuellen Beiträge
Datum
Titel
23.04.2024 14:59:21
23.04.2024 14:47:39
23.04.2024 14:23:45
Anzeige
Archiv - Navigation
1588to1592
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

mit Werten aus Liste ersetzen

mit Werten aus Liste ersetzen
27.10.2017 13:42:53
Annette
Hallo zusammen
Ich habe eine Liste mit Namen in einer Spalte; manchmal steht nur einer drin, manchmal auch mehrere (jeweils mit || getrennt).
Die Namen sollen mit der pers.ID ersetzt werden. Die habe ich in einer anderen Liste mit rund 6000 Personen. Es gibt auch Personen, die nicht in der Liste stehen - deren Name soll einfach so stehen bleiben, wie vorher.
Geht sowas? Evtl. würde mir das passende Suchwort für hier im Forum schon helfen.
Danke für eure Hilfe

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Beispiel
27.10.2017 14:44:48
Annette
Super! Danke dir vielmal, klappt perfekt :-)
AW: Beispiel
01.11.2017 15:05:30
Annette
Ein Problem tritt leider auf, wenn eine Zelle leer ist, die "übersetzt" werden soll. Dann wird nur bis dorthin ersetzt, alles darunter bleibt dann leer. Wie lässt sich das lösen? Wenn eine Zelle im Blatt "Daten" in Spalte A leer ist, dann soll auch das Ergebnis leer sein, aber dann mit den Zellen darunter weitermachen.
AW: Problem!
01.11.2017 17:50:11
Fennek
Hallo,
der Code verkraftet ohne größere Änderungen keine leeren Zellen. Dies liegt an "specialcells(2)".
Es ist (zumindest für mich) einfacher, Leerzellen z.B. durch sortieren zu entfernen als den Code mit .areas anzupassen.
mfg
Ohne Furcht vor Murks:

Sub iFen()
On Error Resume Next
Dim WSF As WorksheetFunction: Set WSF = Application.WorksheetFunction
ID = Sheets("Liste").Cells(1).CurrentRegion
ID_N = Application.Transpose(Application.Index(ID, 0, 2))
For i = 1 To UBound(ID_N)
Next i
for each Ar in Sheets("Daten").Columns(1).SpecialCells(2).areas
Nm = Ar
For i = 1 To UBound(Nm)
If InStr(1, Nm(i, 1), "||") > 0 Then
Nms = Split(Nm(i, 1), "||")
Else
Nms = Nm(i, 1)
End If
If IsArray(Nms) Then
For k = 0 To UBound(Nms)
r = WSF.Match(Nms(k), ID_N, 0)
If Err.Number = 0 Then Nms(k) = ID(r, 1)
Err.Clear
Next k
Cells(i, 3) = Join(Nms, "||")
Else
r = WSF.Match(Nms, ID_N, 0)
If Err.Number = 0 Then Cells(i, 3) = ID(r, 1)
Err.Clear
End If
Next i
next Ar
End Sub
ungeprüft
Anzeige

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige