Alle Tabellenblätter schützen

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Alle Tabellenblätter schützen

von mike6 » Do, 23.02.2006 09:24

Hallo,

Danke, :P das wars.


mfg
mike6

von Stephan » Do, 23.02.2006 07:51

Wir kennen Deine Anforderungen ja garnicht. Es könnte sein das bestimmte Einzelblätter unter bestimmten Bedingungen gemeldet werden sollen.
Ohne Rücksicht darauf brauchst Du doch lediglich die Anzeige nach der Schleife erfolgen zu lassen. Meinethalben so:

Code: Alles auswählen

Sub Schutz_Tabellenblatt 
Dim objDatei As Object 
Dim objBlaetter As Object 
Dim objBlatt As Object 
myDoc = thisComponent 
Anzahl=myDoc.Sheets.count 
For i=0 to Anzahl-1 
objBlatt = myDoc.Sheets(i) 
If objBlatt.isProtected() = True Then 
objBlatt.unprotect("") 
zustand = "auf"
Else 
objBlatt.protect("") 
zustand = "zu"
End If 
Next i 
MsgBox "Schutz " & zustand 
End Sub 
keine Ahnung ob das für Dich zweckmäßig ist.


Gruß
Stephan

von mike6 » Do, 23.02.2006 07:02

Hallo,

das nachfolgende makro schützt alle Tabellenblätter.
++++++++++++++++++++++++++++++++++++
Sub Schutz_Tabellenblatt
Dim objDatei As Object
Dim objBlaetter As Object
Dim objBlatt As Object
myDoc = thisComponent
Anzahl=myDoc.Sheets.count
For i=0 to Anzahl-1
objBlatt = myDoc.Sheets(i)
If objBlatt.isProtected() = True Then
objBlatt.unprotect("")
MsgBox "Schutz auf"
Else
objBlatt.protect("")
MsgBox "Schutz zu"
End If
Next i
End Sub
++++++++++++++++++++++++++++++++++++

Leider hat es noch einen kleinen Fehler.
Wenn ich 40 Tabellenblätter damit schütze, kommt 40 x
die MsgBox "Schutz zu ".

Wie kann ich das noch abstellen?

mfg
mike6

von mike6 » Mi, 22.02.2006 15:50

Hallo Michael,

danke für die Erläuterung.


mfg
mike6

von ykcim » Mi, 22.02.2006 14:07

In dem Du eine Schleife über alle Tabellenblätter machst und jedes einzeln schützt.

Code: Alles auswählen

  myDoc = thisComponent
  Anzahl=myDoc.Sheets.count
  For i=0 to Anzahl-1
      objBlatt = myDoc.Sheets(i)
      If objBlatt.isProtected() = True Then
      objBlatt.unprotect("")
        MsgBox "Schutz auf"
 
      Else 
       objBlatt.protect("")
     MsgBox "Schutz zu"
   End If 
  Next i

mfg
Michael

Alle Tabellenblätter schützen

von mike6 » Mi, 22.02.2006 13:58

Hallo,

mit dem Makro:

++++++++++++++++++++++++++++++++++++++
Sub Schutz_Tabellenblatt
Dim objDatei As Object
Dim objBlaetter As Object
Dim objBlatt As Object
objDatei = ThisComponent
objBlaetter = objDatei.Sheets
objBlatt = objDatei.Sheets(0)

If objBlatt.isProtected() = True Then
objBlatt.unprotect("")
MsgBox "Schutz auf"

Else
objBlatt.protect("")
MsgBox "Schutz zu"
End If

End Sub
++++++++++++++++++++++++++++

schütze ich ein Tabellenblatt bzw. heben den Schutz auf.

Wie ändere ich das Makro ab, damit (alle) Tabellenblätter geschützt sind.


mfg
mike6

Nach oben