Clever-Excel-Forum

Normale Version: Zelle abfrage und wenn ja dann im eine reihe schreiben
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo alle,
Ich hab eine kleine problem. ich muss for meine arbeit eine abfrage von eine tabelle und der ergebnis in eine reihe ausgeben mit eine trennzeichen "|"

[attachment=50990]
[attachment=50989

Hier muss ich folgendes Abfragen: 
Is Zelle H = "Typ1" then kopie Zelle A zu eine leere Zelle unterhalb der daten mit eine "|" als trennzeichen
sonst
when Zelle H = " " then weiter zu nachste spalte.

Die ausgabe muss so ausiehen:
1352600|1352610|1353108|1353242|1369913

Vielen Dank im Voraus
Code:
Sub AbfrageUndAusgabe()
    Dim ws As Worksheet
    Dim letzteZeile As Long
    Dim ausgabeZelle As Range
    Dim i As Long
   
    ' Passe den Tabellennamen entsprechend an
    Set ws = ThisWorkbook.Sheets("DeinTabellenblatt")
   
    ' Finde die letzte Zeile in Spalte H
    letzteZeile = ws.Cells(ws.Rows.Count, "H").End(xlUp).Row
   
    ' Setze die Startzelle für die Ausgabe
    Set ausgabeZelle = ws.Cells(letzteZeile + 2, "A") ' Unterhalb der letzten Zeile + 1
   
    ' Durchlaufe die Daten in Spalte H und füge die entsprechenden Werte zur Ausgabe hinzu
    For i = 1 To letzteZeile
        If ws.Cells(i, "H").Value = "Typ1" Then
            ausgabeZelle.Value = ws.Cells(i, "A").Value
            Set ausgabeZelle = ausgabeZelle.Offset(0, 1) ' Gehe zur nächsten Zelle in der Reihe
            ausgabeZelle.Value = "|" ' Füge das Trennzeichen hinzu
            Set ausgabeZelle = ausgabeZelle.Offset(0, 1) ' Gehe zur nächsten Zelle in der Reihe
        ElseIf ws.Cells(i, "H").Value = "" Then
            ' Wenn Zelle H leer ist, gehe zur nächsten Spalte
            Set ausgabeZelle = ausgabeZelle.Offset(0, 1)
        End If
    Next i
   
    ' Lösche das letzte Trennzeichen
    ausgabeZelle.Value = ""
   
    ' Optional: MsgBox zur Bestätigung
    MsgBox "Die Ausgabe wurde erfolgreich erstellt.", vbInformation
End Sub
Dieser Code geht davon aus, dass sich deine Daten in Spalte A bis H befinden und die Ausgabe unterhalb der letzten Zeile in Spalte A beginnt. Bitte passe den Tabellennamen an ("DeinTabellenblatt") und verwende diesen Code in einem Modul in deinem Excel-Arbeitsbuch.

sagt ChatGPT.
Hi,

hier reicht doch eine Formel (ungetestet, da ich keine Lust habe die Bildchen abzutippen)

=TEXTVERKETTEN("|";;FILTER(A:A;H:H="Typ 1"))