Clever-Excel-Forum

Normale Version: Suche via Sverweis im Text mit mehreren Treffern
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.

1223334444

Hallo,

ich stehe vor folgenden Problem.

Ich habe eine Tabelle mit diversen Ereigniscodes und Beschreibung.
Im zweiten Tabellenblatt bekomme ich die Ereignisse in einer Zeile, ohne Trennung. Die Codes stehen direkt im Text hintereinander mit beliebig vielen Zeichen/Leerzeichen dazwischen.
Ich habe eine Beispieltabelle angehangen.

Das Ziel für mich wäre jetzt, ab Spalte E die Ereignisse einzeln aufzulisten und die entsprechende Beschreibung aus Tabellenblatt Eins jeweils dahinter einzufügen.

Leider komme ich dort mit SVerweis und meinem sonstigen Wissen nicht weiter.

Hat jemand eine Idee, wie ich die Zeile trennen kann?

Danke
Hallo,

bis zum dargestellten Stand, könnte man das mit der Funktion Text in Spalten erreichen:

Ziel Ausw

BCDEFGH
4OrtEreigniss
5A21.01.2020 16:00AB12C_Ereignis1:Passiert
6B21.01.2020 16:00AB12C_Ereignis1:Passiert 21.01.2020 16:30 DE13I_Ereignis2:
7C21.01.2020 17:00FG94L_Ereignis3:21.01.2020 18:00 DE13I_Ereignis2: Text

Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8

Schwieriger wird es mit dem Rest, weil das kein Muster erkennbar ist. Da müsste eine andere Lösung her, darüber denke ich noch mal nach. Die Spalten E und G müssten noch gelöscht werden. Darf es auch ein Makro sein?

1223334444

Hallo,

Makro ist kein Problem, ist in der ursprünglichen Datei eh erforderlich.

Eben dieses nicht erkennbare Muster hat mich auch zugrunde geschlagen ^^
Hallo,

habe mal was gebastelt:

Code:
Sub bearbeiten()
    Dim lngZeile As Long
    Dim leZeile As Long
    On Error Resume Next
    leZeile = ActiveCell.SpecialCells(xlLastCell).Row
    Range("D:H").Delete
    Range("C5:C" & leZeile).TextToColumns Destination:=Range("C5"), DataType:=xlFixedWidth, _
        OtherChar:=".", FieldInfo:=Array(Array(0, 1), Array(18, 1), Array(23, 1), Array( _
        24, 1), Array(33, 1), Array(34, 1), Array(77, 1)), TrailingMinusNumbers:=True
    Cells.EntireColumn.AutoFit
    Range("E:E,G:G").Delete Shift:=xlToLeft
    Columns(6).Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
    For lngZeile = 5 To leZeile
        Cells(lngZeile, 6) = Mid(Cells(lngZeile, 7), Application.WorksheetFunction.Find("_", Cells(lngZeile, 7), 1) - 5, 5)
    Next lngZeile
End Sub

Das Makro ist für das Tabellenblatt "Ziel Ausw". Die Inhalte der Spalten G und H können gelöscht werden, das kann ich auch noch in das Makro einbauen, habe das nur zur Kontrolle drin gelassen.
Hallo,

kein Interesse an dem Lösungsvorschlag?

1223334444

Hallo,

ich war die letzte Zeit nicht im Büro. Ich werde das testen und Rückmeldung geben. Danke.