Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1684to1688
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

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?

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

335 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige