Tabellen ein/ausblenden VBA
#1
Mahlzeit zusammen,
ich brauch mal eure Hilfe. 

Folgendes Problem. Ich habe eine Datei mit den Tabellen Jan, Feb, … bis Dez und für je einen Benutzer (insgesamt 8) ein Tabellenblatt (Benutzer1, Benutzer2,usw)


Jeder Benutzer (1-8) soll die Tabellen Jan bis Dez sehen können und jeweils sein eigenes Tabellenblatt (Benutzer1 also Tabellenblatt 1 usw.)

Benutzer8 hingegen darf alle Tabellenblätter sehen können. Also Jan - Dez und Benutzer1-8

Jetzt die Frage. Wie bekomm ich das in ein funktionierendes Marko.


Danke schonmal im voraus  :15:
Top
#2
Hallo,

man kann das zwar machen, sicher ist es aber nicht. Verborgenes macht neugierig, Excel ist nicht das geeignete Medium für sensible Daten.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Top
#3
Hallo, 

Sensible Daten werden dort nicht reinkommen. Es handelt sich dabei um einen Schichtplan. Die einzelnen Benutzer sollen auf ihrer Benutzerspezifischen Tabelle eine Zusammenfassung des ganzen Jahres sehen können.
Top
#4
Hallo,

zunächst einmal würde ich nicht mit Monatsblättern arbeiten. Wenn das ganze Jahr auf einem Blatt ist, lässt sich das einfacher auswerten. Dann könnte man sogar die persönliche Auswertung per Filter erzeugen. Wie schon angedeutet, ist ein Verbergen von Tabellenblättern nicht sicher. Jeder halbwegs versierte Anwender kann das umgehen.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Top
#5
Hallo,

also die Monatsblätter werd ich jetzt nicht mehr ändern. Und wenn sich einer die versteckten Tabellenblätter angucken möchte, dann kann er das gerne tun.
Ich würde mich eigl. jetzt nur über ein Lösungsvorschlag freuen.
Top
#6
Wink 
Hi
als Ansatz, die Sub rufst du einfach aus dem Workbook Open Ereignis auf.
Beachte eine Fehlerbehandlung einzufügen  Exclamation


Sub EinAusUmZu()
' Die Blätter muss es natürlich geben
ThisWorkbook.Worksheets("Tabelle 1").Visible = False
ThisWorkbook.Worksheets("Tabelle 2").Visible = False
' Usw, kann man auch in eine Schleife

Select Case Environ("Username") ' Anmeldename des Anwenders
Case "Hansi Schmidt"
ThisWorkbook.Worksheets("Tabelle 1").Visible = True
Case "Lotte Müller"
ThisWorkbook.Worksheets("Tabelle 2").Visible = True
' usw
End Select

End Sub
Top
#7
Hallo,

Zitat:also die Monatsblätter werd ich jetzt nicht mehr ändern.

das war mein Lösungsvorschlag. Daten aus zwölf Blättern auf acht andere verteilen, das macht keinen Sinn. Der Aufwand steigt ins unermessliche. Aber inzwischen hast du ja einen Vorschlag bekommen.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste