Hi
Nochmals zum mein Problem
Ich habe eine Artikelliste die Dauernd erweitert wird
In dieser Liste sind Verknüpfungen zu einer anderen Liste
Z.B. In A1 gebe ich die Artikelnummer ein
In A2 erscheint der Artikel der mittels SVERWEIS erzeugt wird bzw. Zusätzlich weitere Zellen in denen weitre Daten eingetragen werden
Nun möchte ich das wenn ich in der Letzen Zeile anfange zu schreiben oder fertig bin
Eine neue Zeile mit allen Formeln und den Rahmenlinie der Vorhergehende Zeile ohne den eingaben die ich gemacht habe eingefügt wird
Wer kann mir helfen
Gruß Alfonso
Office - Word, Excel und Co. 9.744 Themen, 41.408 Beiträge
Hallo Alfonso,
Musterzeile geschützt, in der neuen Eingabezeile,
den Zellschutz in der Spalte A, B, D wieder entfernt.
Kannst das Makro auch auf deine Bedürfnisse anpassen,
deshalb die vielen REM - Zeilen mit Kommentar im Makro.
Einfach mal testen.
****************************************************************
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim MaxDatenZeile As Integer
Dim SuchSpalte As Integer
' Die Tabelle sollte in den 2 Letzten Zeilen nur Formeln und gewünschte Rahmen haben.
' Die letzte Zeile dient als Musterzeile mit Formeln und wird vom Makro Kopiert!
' Letzte Muster - Zeile mit Formeln bitte färben,
' um aus versehen keine Einträge vorzunehmen,
' ebenso mit den gewünschten Rahmen versehen,
' Garantierter Formel - Eintrag in der Muster - Datenzeile in Spalte ? (5)
' "Spaltenangabe Bitte anpassen", denn diese Zelle darf nicht leer sein.
SuchSpalte = 5
' Muster - Datenzeile ermitteln.
MaxDatenZeile = ActiveSheet.Cells(Rows.Count, (SuchSpalte)).End(xlUp).Row
' (Minus 1 ist Letzte Leere Dateneingabezeile)
MaxDatenZeile = MaxDatenZeile - 1
' Wenn in Spalte A der letzten Eingabezeile (Zeile oberhalb der Musterzeile),
' ein Eintrag vorgenommen wird, wird die Musterzeile Kopiert,
' so daß wieder eine Eingabezeile zur Verfügung steht.
If Range("A" & (MaxDatenZeile)) > "" And Range("A" & (MaxDatenZeile) + 1) = "" Then
' Blattschutz entfernen
On Error Resume Next
ActiveSheet.Unprotect "passwort"
' Then von oben ausführen
MaxDatenZeile = MaxDatenZeile + 1
' Letzte Leere Dateneingabezeile mit Formatierung Auswählen und Kopieren
Rows((MaxDatenZeile) & ":" & (MaxDatenZeile)).Select
Selection.Copy
' Fügt die Kopierte Zeile in das Arbeitsblatt ein und verschiebt die Musterzeile nach unten,
' so paßen sich die Formel Automatisch an.
Selection.Insert Shift:=xlDown
' Rahmen von Kopiemarkierung löschen
Application.CutCopyMode = False
' Eingabe- Zeile Entfärben
Selection.Interior.ColorIndex = xlNone
' Zelle in Spalte A, B, D, der neuen Eingabezeile den Zellschutz entfernen
Range("A" & (MaxDatenZeile)).Locked = False
Range("B" & (MaxDatenZeile)).Locked = False
Range("D" & (MaxDatenZeile)).Locked = False
' Eingabezelle nach dem Zeilen Kopieren Aktivieren
Range("B" & (MaxDatenZeile) - 1).Select
' Blattschutz setzen
On Error Resume Next
ActiveSheet.Protect "passwort", DrawingObjects:=True, Contents:=True, Scenarios:=True
Else
End If
End Sub