Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Datei nur für bestimmten User öffnen

Datei nur für bestimmten User öffnen
09.12.2012 14:12:46
Tim
Hallo an alle,
ich habe einen Ordner mit einer Tabelle und einer Kopie der Tabelle.
Die Tabelle ist für alle User gedacht und die Kopie nur für den Admin.
Da im Code aus organisatorischen Gründen festgelegt ist, dass die Datei nur in diesem Ordner funktioniert, befinden sich beide Dateien (Tabelle und Kopie im gleichen Ordner) und es kommt immer wieder vor, das User versehentlich die Kopie statt der eigentlichen Tabelle öffnen.
Gibt es einen Weg in VBA zu sagen, wenn Dateiname = "XXX" und User ungleich "YYY", dann öffne die Datei nicht, sonst öffnen ganz normal ?
Mein Problem ist dabei die Abfrage des Dateinamens, den Rest bekomme ich selber hin.
VG und vielen Dank im Voraus,
Tim

Anzeige

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datei nur für bestimmten User öffnen
09.12.2012 14:20:58
Mister
Hallo,
das geht mit:
If Environ("Username") "Mister-B" Then
MsgBox "Du kommst hier nit rein"
End If
Gruß
Martin

AW: Datei nur für bestimmten User öffnen
09.12.2012 14:24:55
Hajo_Zi
Hallo Martin,
ich würde vermuten da fehlt noch
ThisWorkbook.Close False
Falls Makro deaktiviert nützt es aber nichts.
Gruß Hajo

Anzeige
AW: Datei nur für bestimmten User öffnen
10.12.2012 08:37:20
Tim
Hallo Hajo,
vielen Dank auch dafür - das ist super ! :-)
VG und einen schönen Tag,
Tim

AW: Datei nur für bestimmten User öffnen
09.12.2012 14:22:02
Hajo_Zi
Hallo Tim,
bei open in jeder Datei Environ("USERNAME") abfragen.

Anzeige
AW: Datei nur für bestimmten User öffnen
09.12.2012 14:37:47
Hajo_Zi
Hallo Tim,
löse es über die Zugriffrechte vom Betriebssystem, ist aufwendiger als sonst da kein Extra Ordner. Es geht aber. Da hat es keinen Einfluss ob Makros aktiv.
Gruß Hajo

AW: Datei nur für bestimmten User öffnen
09.12.2012 14:22:06
Daniel
Hi
Dateiname der Datei: ThisWorkbook.Name
Pfad der Datei: ThisWorkbook.Path
Pfad und Dateiname: ThisWorkbook.FullName
Gruß Daniel

Anzeige
AW: Datei nur für bestimmten User öffnen
10.12.2012 08:36:40
Tim
Hallo Daniel,
vielen Dank dafür - genau danach hatte ich gesucht !
Klappt bestens. :-)
VG und einen schönen Tag,
Tim

AW: Datei nur für bestimmten User öffnen
09.12.2012 14:43:33
Mister
Hallo Tim,
die Vorschläge die hier gemacht wurden sind alle korrekt aber funktionieren nur wenn Makros aktiviert sind. Wenn die Datei mit gedruckter Esc Taste geöffnet wird, dann kommt jeder rein und du kannst nichts dagegen machen. Wie immer, diese Sicherheitsvorkehrungen die man in Excel einbauen kann hilfen lediglich gegen unbeabsichtiges Löschen usw. Excel ist nunmal nicht sicher.
Gruß
Martin

Anzeige
AW: Datei nur für bestimmten User öffnen
09.12.2012 15:05:52
Daniel
Hi
um zumindestmal den Standarduser ohne kriminelle Absicht auszusperren, kann man so vorgehen:
1. im Before_Save-Event alle Tabellenblätter bis auf ein leeres Startblatt ausblenden mit .Visible = xlSheetVeryHidden
2. im After_Save-Event alle Blätter wieder einblenden und Saved = True setzen (neues Event!)
3. im Workbook_Open-Event prüft man dann, ob die Bediungungen erfüllt sind und wenn ja, blendet man alle Blätter wieder ein
4. jetzt kann man noch das VBA-Projekt mit einem Passwort versehen.
öffnet jetzt der Anwender die Datei mit Deaktivierten Makros, so sieht er nur die leere Starttabelle, weil durch das Before_Save-Event vor dem Speichern alle anderen Blätter ausgeblendet wurden.
Gruß Daniel

Anzeige
AW: Datei nur für bestimmten User öffnen
09.12.2012 15:07:34
Hajo_Zi
Beispiele dazu findest Du hier
http://hajo-excel.de/vba_nur_makros.htm
Man sollte schon im ersten Beitrag die Aufgabe komplett beschreiben. Beiträge in denen die Aufgabenstellung nicht komblett beschrieben ist erhalten von mir keine weiteren Antworten.
Man muß sich bei jeder veränderten Aufgabenstellung wieder neu in das Problem einarbeiten.

Anzeige
@Hajo,...verwechselst du gerade was?,..
09.12.2012 15:48:12
Matze,Matthias
Hallo Hajo,
..hab nicht gesehen das der Fragesteller sich schon hier mal geäußert hat.
Matze

AW: Fehler
09.12.2012 15:50:41
Hajo_Zi
Hallo Matze,
der Abspann muss fort, da habe ich das falsche von der TB Jeanie eingesetzt.

Anzeige
AW: Datei nur für bestimmten User öffnen
10.12.2012 08:41:46
Tim
Hallo Daniel,
vielen Dank auch dafür !
Das ist alles schon eingebaut (und noch einiges mehr) - nur die ursprüngliche Frage zu Beginn des Threads war noch offen und ist nun dank Deiner / Eurer Hilfe auch bestens gelöst. :-)
VG und vielen Dank nochmal,
Tim

AW: Datei nur für bestimmten User öffnen
10.12.2012 08:40:12
Tim
Hallo Martin,
vielen Dank dafür !
Das ist ok so, da es noch eine ganze Reihe anderer Sicherheitsmechanismen gibt.
Es geht mir bei dieser Tabelle nicht um den ultimativen Schutz, sondern nur um ein paar einfache Hürden, die unbeabsichtigtes Ändern einschränken / verhindern, da die Datei in der Regel von Excel-Laien genutzt wird.
VG und vielen Dank nochmal,
Tim
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Datei nur für bestimmten User öffnen


Schritt-für-Schritt-Anleitung

Um eine Excel-Datei nur für bestimmte Benutzer zu öffnen, kannst Du VBA (Visual Basic for Applications) verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne die Excel-Datei und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf „VBAProject (DeineDatei.xls)“ und wähle „Einfügen“ > „Modul“.

  3. Füge den folgenden Code ein:

    Private Sub Workbook_Open()
       If Environ("Username") <> "DeinBenutzername" Then
           MsgBox "Du kommst hier nicht rein!"
           ThisWorkbook.Close False
       End If
    End Sub

    Ersetze „DeinBenutzername“ mit dem Namen des Benutzers, der Zugriff haben soll.

  4. Speichere die Datei als „Excel-Arbeitsmappe mit Makros“ (.xlsm).

  5. Teste den Code, indem Du die Datei mit einem anderen Benutzer öffnest.


Häufige Fehler und Lösungen

  • Excel-Datei öffnet sich nicht: Stelle sicher, dass Makros aktiviert sind. Wenn Makros deaktiviert sind, kannst Du keine VBA-Programmierung ausführen.

  • Fehlermeldung bei nicht genehmigten Benutzern: Überprüfe den Benutzernamen, den Du in den Code eingegeben hast. Er muss exakt mit dem Namen in Windows übereinstimmen.

  • Excel-Dateien öffnen mit falschem Benutzer: Wenn jemand die Datei mit gedrückter Esc-Taste öffnet, um Makros zu umgehen, wird der Code nicht ausgeführt. Überlege, zusätzliche Sicherheitsmaßnahmen zu implementieren.


Alternative Methoden

  1. Zugriffsrechte im Betriebssystem: Eine aufwendigere Methode ist die Verwendung von Betriebssystem-Zugriffsrechten. So kannst Du sicherstellen, dass nur bestimmte Benutzer auf den Ordner oder die Datei zugreifen können.

  2. Blätter ausblenden: Du kannst im Before_Save-Event alle Tabellenblätter außer einem leeren Startblatt ausblenden. Nutze dabei xlSheetVeryHidden, um die Blätter vor dem Benutzer zu verstecken.

  3. VBA-Projekt mit Passwort schützen: Dies bietet eine zusätzliche Sicherheitsebene, falls jemand versucht, den Code zu ändern.


Praktische Beispiele

Hier ist ein Beispiel für den Code, der die Blätter ausblendet:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    Dim ws As Worksheet
    For Each ws In ThisWorkbook.Worksheets
        If ws.Name <> "Startblatt" Then
            ws.Visible = xlSheetVeryHidden
        End If
    Next ws
End Sub

Private Sub Workbook_AfterSave()
    Dim ws As Worksheet
    For Each ws In ThisWorkbook.Worksheets
        ws.Visible = xlSheetVisible
    Next ws
End Sub

Mit diesem Code werden alle Blätter außer dem „Startblatt“ vor dem Speichern ausgeblendet und nach dem Speichern wieder eingeblendet.


Tipps für Profis

  • Dokumentation: Halte Deine VBA-Codes gut dokumentiert, damit Du oder andere Benutzer in Zukunft verstehen, was jeder Abschnitt macht.

  • Regelmäßige Backups: Erstelle regelmäßig Backups Deiner .xls-Dateien, um Datenverluste zu vermeiden.

  • Testen auf verschiedenen Systemen: Teste Deine Datei auf verschiedenen Benutzersystemen, um sicherzustellen, dass alles ordnungsgemäß funktioniert.


FAQ: Häufige Fragen

1. Wie öffne ich eine .xls-Datei?
Um eine .xls-Datei zu öffnen, kannst Du sie einfach doppelklicken oder Excel öffnen und dann „Datei“ > „Öffnen“ auswählen.

2. Was tun, wenn die Excel-Datei nicht öffnet?
Überprüfe, ob die Datei beschädigt ist oder ob Du die richtigen Berechtigungen hast. Manchmal kann es auch helfen, Excel neu zu starten.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige