Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1236to1240
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Einfügen einer Zeile
slopor
Hallo zusammen!
Habe in meiner "fast" perfekten Datei ein kleines Problem.
Wenn man den "New-Point-Button" drückt, soll eine neue Zeile unterhalb der letzten Zeile eingefügt werden. Funktionierte alles sehr gut, bis ich die letzte zeile (welche rot hinterlegt ist in der Zelle A7) geschützt habe. Ich möchte nicht das jemand da etwas reinschreiben kann.
Bekomme jetzt aber leider beim klicken auf den New-Point-Button eine Fehlermeldung.
https://www.herber.de/bbs/user/77526.xlsm
Kann mir da jemand weiterhelfen?
Gruss
slopor

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Einfügen einer Zeile
16.11.2011 11:06:27
Johannes
Hallo slopor,
ich nehme an Du hast das Tabellenblatt mit einem Zellschutz versehen und den evtl noch mit Passwort versehen. Vorschlag: als erstes den Zellschutz aufheben, dann die Zeile einfügen und anschließend den Schutz wieder setzen.
Sub Zeile_dazu()
ActiveSheet.Unprotect Password:="Dein_Passwort"
hier dein code
ActiveSheet.Protect Password:="Dein_Passwort"
End Sub
Gruß
Johannes
AW: Einfügen einer Zeile
16.11.2011 11:32:34
slopor
Hallo Johannes,
ja du hast Recht, ich habe das Tabellenblatt mit einem Zellschutz versehen. Es wird kein Passwort benötigt.
Wenn du die Datei öffnest und dann auf "new-Point" klickst, dann bringt dir Excel folgenden Fehler:
If LasRow größer 5 Then Rows(LastRow + 1).EntireRow.Insert xlShiftDown
Ich möchte diese Zeile geschütz haben, damit diese nicht ausgefüllt werden kann. Es soll wenn eine neue Zeile benötigt wird, nur der Weg über den "new-point" button gehen.
gruss
slopor
Anzeige
AW: Einfügen einer Zeile
16.11.2011 12:33:40
Dirk
Hallo Slopor,
probier mal so:
Sub Insert_new()
'This macro inserts a new row after the last entry
'Reference for the row is the counting in column A
Application.ScreenUpdating = False
Dim LastRow As Long
Dim Zaehler1 As Long
Dim Zaehler2 As Long
LastRow = Range("A65536").End(xlUp).Row
If LastRow > 5 Then
ActiveSheet.Unprotect
Rows(LastRow + 1).EntireRow.Insert xlShiftDown
ActiveSheet.Protect
End If
'Zaehler pruefen und eintragen
Zaehler1 = Application.WorksheetFunction.Max(Range(Cells(6, 1), Cells(LastRow, 1)))
With Sheets("Archive")
Zaehler2 = Application.WorksheetFunction.Max(.Range(.Cells(4, 1), .Cells(.Rows.Count, 1).End( _
xlUp)))
End With
If Zaehler1 >= Zaehler2 Then
Cells(LastRow + 1, 1).Value = Zaehler1 + 1
ElseIf Zaehler1 

Gruss
Dirk aus Dubai
Anzeige
AW: Einfügen einer Zeile
16.11.2011 13:14:27
slopor
Hallo
das einfügen klappt mit deiner Hilfe Dirk. Jetzt taucht aber ein neues Problem auf. Wenn jetzt ein Punkt "done" ist und man ihn mit Hilfe des "Update-Button" ins Archiv schieben will, kommt die Fehlermeldung:
'Status in Zeile prüfen
If VBA.LCase(.Cells(zeile, 7)) = "done" Then
iCount = iCount + 1
With .Rows(zeile)
.Copy
With Worksheets("Archive")
.Cells(.Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlPasteFormats
.Cells(.Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlPasteValues
End With
If zeile = 6 Then
'in Zeile 6 nur Inhalt löschen
.ClearContents
Else
.Delete 'delete the copied row from source sheet
End If
End With
End If
Next
ZeileL = .Cells(.Rows.Count, 1).End(xlUp).Row

Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige