Microsoft Excel

Herbers Excel/VBA-Archiv

Wert in erster freier Zeile einfügen

Betrifft: Wert in erster freier Zeile einfügen von: Max
Geschrieben am: 10.08.2020 22:16:08

Hallo,
ich habe auch schon in diesem Forum geschrieben https://www.vba-forum.de/View.aspx?ziel=61024-Leere_Zeile,_Wert_einf%C3%BCgen

Bis jetzt noch nicht weitegkommen. Ich versuche die ganze Zeit folgendes zu lösen, doch ich komme leider nicht weiter. In Spalte N habe ich Kostenstellen gegeben und ich möchte gerne, dass wenn in Spalte N zb die Kostenstelle "11400" steht, dass in der ersten leere Zeile in A der Name z.B "Maxi" eingefügt wird.



Folgendermaßen sieht mein Code bis jetzt aus :

Dim s As Long
For s = LastRow To 10 Step -1
If Cells(s, 14) = "11200" Then
Cells(9, 1).Value = "Sabine"

ElseIf Cells(s, 14) = "11400" Then
Cells(Cells(Rows.Count, 1).End(xlDown).Row + 1, 1).Value = "Maxi"

End If
Next s

Noch ist zuzufügen, das ich die leeren Zeilen davor per Code eingefügt habe, ich weiß nicht ob es was damit zutun hat.

Leider tut sich da nichts und ich weiß leider nicht woran das liegen könnte. Ich hoffe, dass mir da jemand weiterhelfen kann.



LG

Betrifft: AW: Wert in erster freier Zeile einfügen
von: GerdL
Geschrieben am: 10.08.2020 23:28:57

Moin Max,

probiere mal mit End(xlUp).

Ansonsten sollte das mit Worksheetfunction.CountIf ohne Schleife gehen, sofern der Suchbegriff nur einmal vorkommt.

Gruß Gerd

Betrifft: AW: Wert in erster freier Zeile einfügen
von: Max
Geschrieben am: 10.08.2020 23:58:09

Habe das jetzt so versucht und bin etwas weitergekommen, danke dafür.

Else
If Cells(s, 14) = "11400" Then
Cells(Cells(s + 1, 1).End(xlUp).Row, 1) = "Maxi"


End If

Aber nun zeigt er mir den Namen 2 mal an. An der richtigen Stelle und dann nochmal weiter unten.

Betrifft: AW: Ohne For-Next-Schleife
von: GerdL
Geschrieben am: 11.08.2020 07:20:49

Moin
Der Suchbegriff kommt in deiner Tabelle mehrfach vor.
If WorksheetFunction.CountIf(Columns("N"), "11400") > 0 Then
    Cells(Rows.Count, 1).End(xlUp).Offset(1) = "Max"
End If
Ob du nach einem String("11400") suchst oder der echten Zahl(11400) musst du wissen.
Gruß Gerd

Beiträge aus dem Excel-Forum zum Thema "Wert in erster freier Zeile einfügen"