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

Forumthread: Zelle nach Wert durchsuchen und Folgewert ausgeben

Zelle nach Wert durchsuchen und Folgewert ausgeben
10.04.2019 09:18:47
Stefan
Hallo,
ich habe eine Problem und komme nicht weiter:
Zeilenweise bekomme ich Daten, die jeweils in der Zelle A1-Ax stehen und durch ; getrennt sind - also die Daten stehen immer in eine Zelle pro Zeile.
Beispiel:
A1: topf;ball;nummer;0293;hallo;farbe;grün;quatsch
A2: maus;nummer;9283;zeitung
A3: hund;katze;maus;nummer;8349;wald;wiese;farbe;gelb;zeitung;größe;xl
Der Inhalt variiert leider immer und ich suche bestimmte Werte (sofern sie vorkommen) und will den jeweils Folgewert in Nachbarspalten ausgeben.
Ich benötige in diesem Beispiel zB die
nummer
farbe
größe
Sollte dann so aussehen:
B1: 0293 C1: grün D1:
B2: 9283 C2: D2:
B3: 8349 C3: gelb D3: xl
Hat jemand einen Tipp wie ich in einer Zelle nach Werten suchen kann und den Folgewert ausgeben kann?
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Split(cells(i,"A"), ";") owT
10.04.2019 09:27:22
Fennek
AW: Zelle nach Wert durchsuchen und Folgewert ausgeben
10.04.2019 10:00:05
UweD
Hallo
so....
in ein normales Modul
Sub KK()
    Dim ARR() As String, SP As Integer, LR As Long, i As Long, j As Integer, OS As Integer
    
    SP = 1 'Spalte A 
    With ActiveSheet
        LR = .Cells(.Rows.Count, SP).End(xlUp).Row 'letzte Zeile der Spalte 
    
        For i = 1 To LR
            ARR = Split(.Cells(i, SP), ";")
        
            For j = Lbound(ARR) To Ubound(ARR)
                
                Select Case LCase(ARR(j))
                    
                    Case "nummer"
                        OS = 1
                    Case "farbe"
                        OS = 2
                    Case "größe"
                        OS = 3
                    Case Else
                        OS = 0
                        'Nichts 
                End Select
                
                If OS > 0 Then
                    With .Cells(i, SP).Offset(0, OS)
                        .NumberFormat = "@" 'wegen der führenden Null 
                        .Value = ARR(j + 1)
                    End With
                End If
            Next j
        Next i
    End With
End Sub

LG UweD
Anzeige
AW: Zelle nach Wert durchsuchen und Folgewert ausgeben
10.04.2019 10:33:36
Daniel
Hi
Würde ich so machen:
1. Teile die Texte mit der Funktion Daten - Datentools Text in Spalten mit dem Semikolon als Trennzeichen in einzelne Zellen auf.
Die Werte sollten dann pro Zeile nebeneinander stehen.
2. die Auswertung machst du dann mit:
=Index(A1:Z1;1;Vergleich("Farbe";A1:Z1;0)+1)
Gruß Daniel
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
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