Thema Datum  Von Nutzer Rating
Antwort
Rot Blattschutz
21.10.2021 05:57:31 Daniela
NotSolved
21.10.2021 08:32:30 Nobody
NotSolved
21.10.2021 08:45:30 Daniela
NotSolved
21.10.2021 16:23:43 Nobody
NotSolved
22.10.2021 08:55:22 Daniela
NotSolved

Ansicht des Beitrags:
Von:
Daniela
Datum:
21.10.2021 05:57:31
Views:
120
Rating: Antwort:
  Ja
Thema:
Blattschutz

Guten Tag,

Ich hatte schon in einem anderen Forum um eine Lösung dieses Problems gebeten, jedoch kam bis jetzt keine Antwort. Deshalb hoffe ich hier eine zu erhalten.

Ich habe eine ToDo Tabelle mit dem unten aufgeführten Script erstellt und stehe nun vor dem nächsten Problem (Fehlermeldung beim Kopieren der Datensätze).

Auf der aktuellen ToDo Seite wird die Tabelle auch richtig entsperrt und wieder (nach Ablauf des Scripts) gesperrt, sofern die Archiv-Seite noch nicht gesperrt ist (also kein Kennwort gesetzt ist).
Sobald ich die Archivseite schütze (analog der ToDo Seite), wird eine Fehlermeldung bei
wksArchiv.Rows (2).Insert Shift:=clDown
Angezeigt (Fehlermeldung: Die Insert-Methode des Range-Objektes konnte nicht ausgeführt werden.)
Das würde für mich bedeuten, dass ich das
ActiveSheet.Unprotect Password:=""
noch nicht richtig gesetzt habe. Ist das richtig? An welchen Ort müsste ich denn den Befehl hinterlegen, oder gar eine andere Variante?

 

 

ub MoveToArchiv()
ActiveSheet.Unprotect Password:=""

    Dim i As Long
    Dim lRows As Long
    Dim vntResult As Variant
     
    Dim wksToDo As Worksheet
    Dim wksArchiv As Worksheet
 
    Set wksToDo = ActiveWorkbook.Worksheets("ToDo")
     Set wksArchiv = ActiveWorkbook.Worksheets("Archiv")
    
    lRows = wksToDo.UsedRange.SpecialCells(xlCellTypeLastCell).Row
    
    For i = lRows To 2 Step -1
        Set vntResult = wksToDo.Range(wksToDo.Cells(i, 8), wksToDo.Cells(i, 8)).Find( _
                        What:="erledigt", LookIn:=xlValues, lookat:=xlWhole, searchorder:=xlByRows, searchdirection:=xlNext, MatchCase:=True)
                        
        If Not vntResult Is Nothing Then
        
        
        
            wksToDo.Rows(i).Copy
            wksArchiv.Rows(2).Insert Shift:=xlDown
            wksToDo.Rows(i).Delete Shift:=xlUp
            
            
            
        End If
        
        Set vntResult = Nothing
    Next i
    
    Application.CutCopyMode = False
    Set wksToDo = Nothing
       Set wksArchiv = Nothing
    ActiveSheet.Protect Password:=""
End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:

 
 

  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Blattschutz
21.10.2021 05:57:31 Daniela
NotSolved
21.10.2021 08:32:30 Nobody
NotSolved
21.10.2021 08:45:30 Daniela
NotSolved
21.10.2021 16:23:43 Nobody
NotSolved
22.10.2021 08:55:22 Daniela
NotSolved