Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

User für Case Anweisung aus Zelle auslesen

User für Case Anweisung aus Zelle auslesen
04.07.2018 09:21:08
René
Hallo,
ich habe ein Makro mit dem User abhängig Tabellenblätter freigegeben werden.
Nun möchte ich erreichen das bei Neuanlage eine Users nicht im Makroeditor angepasst werden _ muss. Ist es möglich die Userkürzel in eine Tabelle einzutragen und dort für die Case Anweisung die Anmeldeküzel auszulesen da die Sekretärin kein VBA kann.

Private Sub Workbook_Open()
Dim Blatt As Worksheet
Dim strUser As Variant
'erst mal alle ausblenden
For Each Blatt In Sheets
If Blatt.Name  "dummy" Then Blatt.Visible = xlSheetVeryHidden 'eins muss sichtbar sein
Next Blatt
strUser = LCase(Environ("USERNAME"))  'User in Kleinschreibung
Select Case strUser
Case "V1234", "V1235"         'Herr 1/ Herr2
Sheets("1").Visible = True
Sheets("Hr.1").Visible = xlSheetVisible
Sheets("Fr.2").Visible = xlSheetVisible
Sheets("Hr.3").Visible = xlSheetVisible
Sheets("Fr.4").Visible = xlSheetVisible
Sheets("1").Select
Case "V1236"
Sheets("Hr.1").Visible = True
Sheets("Hr.1").Select
Case "V1237"
Sheets("Fr.2").Visible = True
Sheets("Fr.2").Select
Case "V1238"
Sheets("Hr.3").Visible = True
Sheets("Hr.3").Select
Case "V1239"
Sheets("Fr.4".Visible = True
Sheets("Fr.4").Select
End Select
End Sub

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: User für Case Anweisung aus Zelle auslesen
04.07.2018 09:56:52
ChrisL
Hi René
Hilfstabelle Spalte A = Username (klein geschrieben)
Hilfstabelle Spalte B = Entweder Tabellenname oder Text "Superuser"
Private Sub Workbook_Open()
Dim strRechte As String, wks As Worksheet
strRechte = WorksheetFunction.VLookup(LCase(Environ("Username")), _
Worksheets("Hilfstabelle").Range("A:B"), 2, 0)
If strRechte  "Superuser" Then Worksheets(strRechte).Visible = True
For Each wks In ThisWorkbook.Worksheets
If strRechte = "Superuser" Or strRechte = wks.Name Then
wks.Visible = True
Else
wks.Visible = xlSheetVeryHidden
End If
Next wks
End Sub
cu
Chris
Anzeige
AW: User für Case Anweisung aus Zelle auslesen
04.07.2018 10:56:29
René
Hallo Chris,
das ist ja SUPERGENIAL. Da kann ich mir meinen Code komplett sparen - oder?
Habe gerade mal mit zwei Usern getestet, funktioniert hervorragend. Klappt das auch wenn ich 50 User in die Tabelle eintrage?
Gruß René und besten Dank (Einmal mit Profis arbeiten)
AW: User für Case Anweisung aus Zelle auslesen
04.07.2018 11:00:36
ChrisL
Hi
Ja und ja. Du kannst so viele User definieren, wie Excel Zeilen hat (ca. 1 Mio.).
cu
Chris

360 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige