Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema InputBox
BildScreenshot zu InputBox InputBox-Seite mit Beispielarbeitsmappe aufrufen

Tabellenblatt mit Passwort schützen - kein ausbl.


Betrifft: Tabellenblatt mit Passwort schützen - kein ausbl. von: Christopher
Geschrieben am: 06.09.2019 12:50:26

Hallo ihr lieben,

ich habe momentan in meinem Betrieb ein Projekt am laufen, eine Funktionierende Excel Tabelle zu erstellen. Mit Makros sollen Daten etc. sortiert werden, etc.

Nun folgendes Problem:

- In dieser Datei arbeiten mehrere Leute über der o365 Cloud in der Datei.
- Personen A dürfen am besten nichts im Blatt von Personen B ändern

Geht es, dass man ein Tabellenblatt beim öffnen mit Passwort schützt, OHNE es auszublenden?

Vielen dank!
Chris

  

Betrifft: AW: Tabellenblatt schützen von: Rudi Maintaire
Geschrieben am: 06.09.2019 13:07:18

Hallo,
ja sicher kann man das schützen.
Aber sehen kann es jeder.

Gruß
Rudi


  

Betrifft: AW: Tabellenblatt mit Passwort schützen - kein ausbl. von: UweD
Geschrieben am: 06.09.2019 13:12:14

Hallo


Angenommen:

die Tabellenblätter heißen so, wie die Anmeldenamen der Nutzer..

Code mus in den Bereich "DieseArbeitsmappe"

Microsoft Excel Objekt DieseArbeitsmappe

Option Explicit 
 
Private Sub Workbook_BeforeClose(Cancel As Boolean) 
    Dim strUser As String, TB 
    Dim strPass As String 
     
    strPass = "ABC" 
     
    For Each TB In ThisWorkbook.Sheets 
        TB.Protect strPass 
    Next 
     
    ThisWorkbook.Save 
 
End Sub 
 
Private Sub Workbook_Open() 
    Dim strUser As String, TB 
    Dim strPass As String 
     
    strPass = "ABC" 
     
    strUser = Environ("username") 
     
    For Each TB In ThisWorkbook.Sheets 
        If LCase(TB.Name) = LCase(strUser) Then 
            TB.Unprotect strPass 
        End If 
    Next 
 
End Sub 


ABER: Nichts ist sicher.


  

Betrifft: AW: Tabellenblatt mit Passwort schützen von: Bernd
Geschrieben am: 06.09.2019 13:20:25

Servus Chris,

teste mal...

Im Codebereich von "DieseArbeitsmappe":

Option Explicit
Dim ws As Worksheet

Private Sub Workbook_Open()
For Each ws In ThisWorkbook.Worksheets
    ws.Protect Passwort & ws.Index
Next ws
End Sub
In ein allgemeines Modul:
Public Const Passwort As String = "Passwort"
und in JEDES Tabellenblatt folgenden Code:
Option Explicit
Dim Pass As String
Dim ws As Worksheet

Private Sub Worksheet_Activate()
Pass = InputBox("Bitte das Passwort für dieses Blatt eingeben:", "Passwortschutz")
If Pass = Passwort & ActiveSheet.Index Then
    ActiveSheet.Unprotect Passwort & ActiveSheet.Index
End If
End Sub

Private Sub Worksheet_Deactivate()
ActiveSheet.Protect Passwort & ActiveSheet.Index
End Sub
Grüße, Bernd


Beiträge aus dem Excel-Forum zum Thema "Tabellenblatt mit Passwort schützen - kein ausbl."