28.02.2019, 15:41
Hallo,
ich bräuchte Hilfe bei einem Excel VBA Problem, wo ich nicht weiter komme.
Dazu muss ich sagen, dass ich was VBA angeht Anfänger bin und mir einige Sachen ergoogelt und zusammengefügt habe :30: . Daher kann kommt euch der Code vielleicht ein wenig wirr vor.
Die Tabelle sieht in etwa wie folgt aus
A B C
1 Nr. Bla Bla
2 123 Text Text
3 213 Text Text
4
5
6 Nr. Bla Bla
7 321 Text Text
8
9 Nr. Bla Bla
10
Mit dem unten stehendem Makro möchte ich bewirken, dass wenn ich in Spalte A in Zeile 3 eine neue Nummer eintrage, automatisch eine neue Zeile unterhalb der neu eingetragenen Nummer eingefügt wird.
Oder wenn ich in Zeile 7 eine neue Nummer eintrage, dass sich dort ebenfalls unterhalb automatisch eine neue Zeile einfügt.
Wenn jetzt aber schon mehrere Nummern schon vorhanden sind (siehe Zeile 2) und ich eine Veränderung an der Nummer vornehme, soll keine Zeile eingefügt werden.
Soweit fügt das Makro die Zeile ein. Nur leider werden gleich mehrere Zeilen eingefügt und wenn man bei Zeile 2 die Nummer ändert, werden dazwischen ebenfalls Zeilen eingefügt.
Die Datei habe ich auch mal mit angehangen.
Ich hoffe ihr könnt mir helfen ^^
Vg
Gimpi
ich bräuchte Hilfe bei einem Excel VBA Problem, wo ich nicht weiter komme.
Dazu muss ich sagen, dass ich was VBA angeht Anfänger bin und mir einige Sachen ergoogelt und zusammengefügt habe :30: . Daher kann kommt euch der Code vielleicht ein wenig wirr vor.
Die Tabelle sieht in etwa wie folgt aus
A B C
1 Nr. Bla Bla
2 123 Text Text
3 213 Text Text
4
5
6 Nr. Bla Bla
7 321 Text Text
8
9 Nr. Bla Bla
10
Mit dem unten stehendem Makro möchte ich bewirken, dass wenn ich in Spalte A in Zeile 3 eine neue Nummer eintrage, automatisch eine neue Zeile unterhalb der neu eingetragenen Nummer eingefügt wird.
Oder wenn ich in Zeile 7 eine neue Nummer eintrage, dass sich dort ebenfalls unterhalb automatisch eine neue Zeile einfügt.
Wenn jetzt aber schon mehrere Nummern schon vorhanden sind (siehe Zeile 2) und ich eine Veränderung an der Nummer vornehme, soll keine Zeile eingefügt werden.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, Range("A:A")) Is Nothing Then Exit Sub
Dim i As Long
For i = Cells(Columns.Count, "A").End(xlUp).Row To 1 Step -1
If ((Cells(i, "A") <> "") And (Cells(i + 1, "A") = "")) Then
ActiveCell.EntireRow.Insert Shift:=xlShiftDown
End If
Next
' MsgBox "Makro gestartet!"
End Sub
Soweit fügt das Makro die Zeile ein. Nur leider werden gleich mehrere Zeilen eingefügt und wenn man bei Zeile 2 die Nummer ändert, werden dazwischen ebenfalls Zeilen eingefügt.
Die Datei habe ich auch mal mit angehangen.
Ich hoffe ihr könnt mir helfen ^^
Vg
Gimpi