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,
In der "Musterzeile", die Zelle in Spalte A Sperren und die Muster- Zeile mit einer Hintergrundfarbe versehen, das sollte das unbeabsichtigte Einfügen in der Musterzeile verhindern.
Die zusätzliche Makrozeile einfügen, sie entfernt wieder den kopierten Zell- Schutz, in der eingefügten Zeile in der Spalte A.
Die Zelle in Spalte A der Musterzeile wird auch noch überprüft, ob sie Leer ist, dann wird das Makro ausgeführt.
das geänderte Makro:
****************************************************************************************
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 Letzte Muster - Datenzeile in Spalte ? (5)
' "Spaltenangabe Bitte Anpassen"
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.
' ********************* ÄNDERN ************************
If Range("A" & (MaxDatenZeile)) > "" And Range("A" & (MaxDatenZeile) + 1) = "" Then
' ********************* ÄNDERN ************************
' Blattschutz entfernen "passwort" bitte anpassen innerhalb " ".
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
' ****************** EINFÜGEN *********************
' Zelle in Spalte A der neuen Eingabezeile Freigeben
Range("A" & (MaxDatenZeile)).Locked = False
' ****************** EINFÜGEN *********************
' nächste Eingabezelle Aktivieren nach Zeile Kopieren,
' Spalte Bitte anpassen .......Range("B" ........,
' die Zelle darf nicht geschützt sein.
Range("B" & (MaxDatenZeile) - 1).Select
' Blattschutz setzen "passwort" bitte anpassen innerhalb " ".
On Error Resume Next
ActiveSheet.Protect "passwort", DrawingObjects:=True, Contents:=True, Scenarios:=True
' ****************** EINFÜGEN *********************
Else
' ****************** EINFÜGEN *********************
End If
End Sub