mein nachfolgender Code funktioniert soweit super.
Ich kann dadurch einen Datensatz einfügen.
Jedoch möchte ich den Datensatz nur in einem bestimmten Bereich einfügen.
z.b zwischen Zeile 16-999.
Ich bekomme es aber nicht hin :(
Sub ZeileEinfügen()
Dim ws As Worksheet, wsV As Worksheet, z%
Set ws = ActiveSheet
Set wsV = ThisWorkbook.Worksheets("Datensatz")
Application.EnableEvents = False
With Worksheets("Aufstellung Brandschutzklappen")
.Unprotect Password:="sperl"
Selection.EntireRow.Insert Shift:=xlDown
z = ActiveCell.Row
wsV.Rows("5:5").Copy ws.Range("A" & z)
Worksheets("Aufstellung Brandschutzklappen").Protect Password:="sperl"
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFiltering:=True
End With
Application.EnableEvents = True
End Sub
Bei meinem Code für das Löschen der Zeile in bestimmten Bereich funkioniert das auch.
Sub ZeileLöschen()
Dim rngBereich As Range
Set rngBereich = Range("A16:EU999") 'Hier den Bereich angeben !
If Intersect(ActiveCell, rngBereich) Is Nothing Then
MsgBox "Makro wird nicht ausgeführt : Bitte zuerst eine Zelle im Bereich " & _
rngBereich.Address(0, 0) & " anklicken !", vbCritical + vbOKOnly, _
"Fehlerhafte Zelle"
Else
Worksheets("Aufstellung Brandschutzklappen").Unprotect Password:="sperl"
Selection.EntireRow.Delete
Worksheets("Aufstellung Brandschutzklappen").Protect Password:="sperl"
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFiltering:=True
End If
End Sub
Bei dem Code zum einfügen von Zeilen ist wichtig, das der Code
Application.EnableEvents = False
erhalten bleibt.
Ebenso möchte ich beim Einfügen in einem falschen Bereich auch die Meldung habe wie beim Löschen im falschen Bereich
Hoffe mir kann wer weiterhelfen.