Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
VBA Zeile_Einfügen
05.11.2016 11:06:54
Andreas

Hallo,
habe ein kleines Problem mit folgenden Code.
  • 
    Sub Zeile_Einfügen_mit_Nummer_nach_unten_neu()
    Dim lngLetzteB As Long
    If Cells(ActiveCell.Row, 1).Value = "" Then Exit Sub
    Cells(ActiveCell.Row, 2).Resize(1, 11).Insert Shift:=xlDown, CopyOrigin:= _
    xlFormatFromLeftOrAbove
    lngLetzteB = Cells(Rows.Count, "B").End(xlUp).Row
    If Cells(lngLetzteB, "A") = "" Then Cells(lngLetzteB, "A") = Cells(lngLetzteB - 1, "A") + 1
    End Sub
    

  • Dieser soll mir, wenn ich mich in Spalte C befinde, eine Zeile einfügen, meine Tabellenwerte darunter eine Zeile nach unten Verschieben, in Spalte A die letzte Nummer am Ende um +1 Erhöhen, die Formatierung der Zeile darüber für den Bereich B:Lübernehmen.
    Habe eine Beispielmappe mit angehängt: https://www.herber.de/bbs/user/109220.xlsm
    Der Code funktioniert noch nicht so recht. Fehler sind:
    fortlaufende Nummerierung in A
    gar nicht oder aber sie wird erst zu spät übernommen
    das selbe passiert mit der Formatierung
    Vielleicht findet jemand den Fehler.
    LG Andreas

    2
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: VBA Zeile_Einfügen
    05.11.2016 15:50:05
    Andreas
    Habe meinen Code schon mal soweit geändert bekommen, das nur noch die fortlaufende Nummerierung in Spalte "A" nicht ganz richtig läuft.
    Befinde ich mich z.B. in Zelle C5, und führe das Makro aus, wird alles wie gewollt verschoben. Nur die Nummerierung in "A" wird erst dann mit+1 am Ende erhöht, wenn ich mich in der letzten leeren Zeile Aktiv befinde.
    Es sollte sich aber auch in "A" die Zahl bereits um +1 erhöhen, wenn ich weiter oben die Zeile
    nach unten verschiebe.
      'Funktion eine_Zeile_Einfügen_mit_neuer_Nummer
    Sub Zeile_Einfügen_mit_Nummer_nach_unten_neu()
    ActiveCell.Offset(1).Select
    r = ActiveCell.Row
    If Range("A" & r) = "" Then
    Range("A" & r).Value = Range("A" & r - 1).Value + 1
    Range("A" & r - 1 & ":L" & r - 1).Copy
    Range("A" & r).PasteSpecial xlPasteFormats
    End If
    Dim lngLetzteB As Long
    If Cells(ActiveCell.Row, 1).Value = "" Then Exit Sub
    Cells(ActiveCell.Row, 2).Resize(1, 11).Insert Shift:=xlDown, CopyOrigin:= _
    xlFormatFromLeftOrAbove
    lngLetzteB = Cells(Rows.Count, "B").End(xlUp).Row
    If Cells(lngLetzteB, "A") = "" Then Cells(lngLetzteB, "A") = Cells(lngLetzteB - 1, "A") + 1
    End Sub
    

    Kann wer helfen?
    Grüße Andreas
    Anzeige
    AW: VBA Zeile_Einfügen
    07.11.2016 21:43:37
    Andi
    ich mache erst mal zu

    333 Forumthreads zu ähnlichen Themen

    Anzeige
    Anzeige
    Anzeige
    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige