Collapse column

Beiträge anzeigen

Diese Sektion erlaubt es dir alle Beiträge dieses Mitglieds zu sehen. Beachte, dass du nur solche Beiträge sehen kannst, zu denen du auch Zugriffsrechte hast.


Nachrichten - Excel_n00b

Seiten: [1]
1
Excel / Office 2010: VBA Passwortabfrage i.V.m. Freigabe an mehrere Benutzer
« am: November 03, 2015, 09:32:11 Vormittag »
Hallo liebe Community,

ich habe ein Problem, welches ich mit meinen wenigen Kenntnissen nicht zu lösen vermag.

Ich habe eine Datei gebastelt, in der die verschiedenen Tabellenblätter miteinander kommunizieren, um die Informationen zu übertragen die eingegeben werden (NICHT ALLE, sondern eben nur bestimmte)

Die Datei soll von verschiedenen Parteien benutzt werden, die nicht die Tabellenblätter der anderen sehen können. Daher folgender VBA (auch weil es spaß gemacht hat ^^) - (Passwörter und Tabellenamen abgeändert):

 Private Sub Workbook_Open()
 Dim i As Long
 For i = 1 To Worksheets.Count
 Sheets(i).Protect userinterfaceonly:=True, Password:="XXX"
 Sheets(i).EnableOutlining = True 'für Gliederung
 Sheets(i).EnableAutoFilter = True 'für Autofilter
 Next i
 Worksheets("A").Visible = xlVeryHidden
 Worksheets("B").Visible = xlVeryHidden
 Worksheets("C").Visible = xlVeryHidden
 Worksheets("D").Visible = xlVeryHidden
 Worksheets("E").Visible = xlVeryHidden
Nochmal:
 strpassword = InputBox("Bitte Passwort eingeben")
 If strpassword = "" Then
  Exit Sub
 End If
 Select Case strpassword
 Case "555"
Worksheets("A").Visible = True
Worksheets("B").Visible = True
Worksheets("C").Visible = True
Worksheets("D").Visible = True
Worksheets("E").Visible = True
Worksheets("C").Activate
 Case "333"
Worksheets("A").Visible = True
Worksheets("B").Activate
 Case "222"
Worksheets("C").Visible = True
Worksheets("A").Visible = True
Worksheets("A").Activate
 Case "111"
Worksheets("x").Visible = True
Worksheets("y").Activate
 Case Else
 MsgBox "Falsches Passwort ..."
 GoTo Nochmal
 End Select
 End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
 Worksheets("A").Visible = xlSheetVeryHidden
 Worksheets("B").Visible = xlSheetVeryHidden
 Worksheets("C").Visible = xlSheetVeryHidden
 Worksheets("D").Visible = xlSheetVeryHidden
 Worksheets("E").Visible = xlSheetVeryHidden
   
 End Sub



Also was passiert ist ganz offensichtlich, für das jeweilige Passwort bekommt jemand jeweils zugriff auf ein Tabellenblatt oder eben 2 oder 4 Tabellenblätter. Ich habe es hier mit vollkommen Excelneulingen zu tun, daher ist mir auch "egal" das man die VBA´s aufrufen kann (nur falls das jetzt als Hinweis kommt)

Mein Problem ist nun folgendes: Sobald ich jetzt die Bearbeitung durch mehrere Benutzer freigebe, spinnt mein VBA und die Passwortabfrage findet nicht statt und alle Sheets sind ausgeblendet!

Wie kann ich mehrere Benutzer freischalten UND mein VBA funktioniert?
(PS: Ich will nicht mehrere einzelne Dateien machen!)


THX @ all



Seiten: [1]