Office: VBA einzelne Tabellenblätter nur mit Pin/Passwort bearbeiten können

Helfe beim Thema VBA einzelne Tabellenblätter nur mit Pin/Passwort bearbeiten können in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hi Leute, ich bin neu hier, nicht fündig geworden und eröffne nun mal mein Anliegen: Ich beschäftige mich seit kurzem mit Visual Basic. Ich möchte... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Mischi177, 27. Januar 2015.

  1. Mischi177 Neuer User

    VBA einzelne Tabellenblätter nur mit Pin/Passwort bearbeiten können


    Hi Leute, ich bin neu hier, nicht fündig geworden und eröffne nun mal mein Anliegen:

    Ich beschäftige mich seit kurzem mit Visual Basic.
    Ich möchte in Excel eine Datei erstellen, wo jeder meiner Mitarbeiter seine geleisteten Stunden selbst eintragen kann.
    Jeder Mitarbeiter soll einem Tabellenblatt zugewiesen werden und auch nur dieses bearbeiten können.

    In VBA bin ich nun soweit, dass sich beim öffnen der Arbeitsmappe ein Fenster/Eingabemaske öffnet, in welches man eine "Pin/Passwort" eingeben muss und sich dann das entsprechende Tabellenblatt öffnet.

    Problem:
    Jeder User kann jedes Tabellenblatt ausfüllen. Habs mit .Unprotect, .protect, .cells.locked etc probiert - Ich weiß nicht weiter.
    Habe hier im Forum etwas gefunden wo man nur einzelne Spalten bearbeiten kann, habe es aber nicht geschafft diese Codes auf die Worksheets abzuändern, geschweige denn den "Passwortschutz" (wenns denn geht :-) )

    Schön wäre wenn der Admin (Ich) mit einem "Masterpasswort" alles bearbeiten könnte... aber das nur am Rande.

    Vielleicht habt Ihr ja eine Idee, wie ich es am besten lösen könnte.

    Über hilfreiche Tipps wäre ich sehr dankbar.

    Gruß Michael
     
    Mischi177, 27. Januar 2015
    #1
  2. miriki Erfahrener User
    Moinsens!

    Aus Datenschutz-Sicht ist es höchstwahrscheinlich absolut überhaupt gar nicht akzeptabel, daß ein Mitarbeiter auch nur Einsicht, geschweige denn Änderungsmöglichkeiten, in die Zeitkonten seiner Kollegen hat.

    Excel ist da, was die Sicherheit der Daten betrifft, nicht unbedingt die beste Wahl. Aber mit ein paar Punkten kann man wenigstens in die richtige Richtung gehen und "das Beste draus machen".

    Ich würde damit anfangen, daß die Blätter der jeweils "anderen" Mitarbeiter ausgeblendet werden. Und damit die nicht auch "mal eben" wieder eingeblendet werden können, müssen sie per VBA mit "xlVeryHidden" versehen werden. Damit tauchen sie nicht mehr in der Liste der einblendbaren Blätter auf.

    Mittels ".Locked" kannst Du Zellen für die Bearbeitung sperren oder freigeben. Zusammen mit dem ".Protect" des Arbeitsblatts wird dieser Schutz aber erst wirksam.

    Die PIN-Abfrage ist schon mal ein Anfang, aber es wäre vielleicht sicherer, direkt den Windows-Benutzernamen auszulesen. Zusätzlich dann noch nach einem Paßwort zu fragen, kann dann aber nicht schaden. Über eine Umsetzungs-Tabelle kannst Du dann ja den Windows-Namen in den "echten" Namen umsetzen und Änderungs-Rechte bestimmen.

    Diese ganzen Mechanismen sind aber für die Katz, wenn jemand die Mappe öffnet, ohne die Makros zu aktivieren (Sicherheits-Einstellungen) und dann noch in den Entwurfsmodus / VBA-Editor gehen kann. Wenn dann die PINs für die Eingangs-Abfrage oder die Passworte für den Blattschutz im VBA-Source einzusehen sind, dann gute Nacht Marie... ;-) Durch Freigabe für gemeinsame Bearbeitung und ein paar andere Maßnahmen (z.B. Passworte als MD5-Checksumme speichern) kann man dem wieder etwas entgegenwirken, aber ganz sauber wird das trotzdem nicht.

    Alles in allem: Ein Riesenaufwand für etwas, was mit "professioneller" Software speziell für Zeiterfassungen sicherlich sehr viel vernünftiger hinzubekommen ist.

    Gruß, Michael
     
  3. miriki Erfahrener User
    Moin, nochmal...

    Wenn Du das ganze natürlich auch als Programmier-Objekt ansiehst, um Dich mit VBA vertraut zu machen, dann könntest Du dir mal anschauen, was ich im Anhang habe.

    Ok, die beiden Module mdl_WsInfo und mdl_MD5 sind sicherlich bereits deutlich jenseits von Anfänger-Niveau. Aber die kannst Du ja mal als "gegeben" ansehen.

    Das mdl_Login ist da mehr für Dich interessant und dazu der Code hinter "DieseArbeitsmappe" und dem Worksheet "Login".

    Wenn Du Dir das Blatt "MD5" ansiehst: Die Spalte "Passwort" darf in der endgültigen Fassung natürlich nicht mehr enthalten sein - also nicht nur ausgeblendet, sondern wirklich gelöscht!

    Aber ich befürchte mal, daß so ein Projekt, gerade weil es auch noch mit sensiblen Daten hantiert, vielleicht doch ein bißchen zu viel für den Anfang ist...

    Gruß, Michael
     
Thema:

VBA einzelne Tabellenblätter nur mit Pin/Passwort bearbeiten können

Die Seite wird geladen...
  1. VBA einzelne Tabellenblätter nur mit Pin/Passwort bearbeiten können - Similar Threads - VBA einzelne Tabellenblätter

  2. Semikolon via VBA in einzelne Zellen separieren

    in Microsoft Excel Hilfe
    Semikolon via VBA in einzelne Zellen separieren: Hallo zusammen, ich benötige eure Hilfe. Ich habe eine Zelle mit mehr als 260 Informationen. Die sind durch ein Semikolon getrennt. Bis jetzt habe ich diese über die Funktion "Daten-Text in...
  3. einzelne Spalten in neue Dateien kopieren

    in Microsoft Excel Hilfe
    einzelne Spalten in neue Dateien kopieren: Hallo zusammen, ich brauche ein wenig Hilfestellung: Ich habe eine Tabelle (exemplarisch) Titel A Titel B Spalte A Spalte B...
  4. VBA Makro, einzelne Zellen kopieren und in fortlaufende Zeile einfügen

    in Microsoft Excel Hilfe
    VBA Makro, einzelne Zellen kopieren und in fortlaufende Zeile einfügen: Hallo zusammen Verstehe die Makro Codes nicht gut, jedoch halfen bereits youtube Tutorials bei ein paar Problemen. Nun bräuchte ich aber eure Hilfe. Es geht um folgendes: Ich möchte ein Makro in...
  5. VBA Serienbrief in einzelne Ordner speichern

    in Microsoft Word Hilfe
    VBA Serienbrief in einzelne Ordner speichern: Moin, ich habe ein Serienbriefdokument. Derzeit ist es möglich, mit VBA alle Dokumente nach Nachnamen und Vornamen aus der Excelquelle einzeln zu speichern. Ich würde nun gerne auch das die...
  6. VBA - Serienbriefe in einzelnen Dokumenten speichern

    in Microsoft Word Hilfe
    VBA - Serienbriefe in einzelnen Dokumenten speichern: Hallo, Ich möchte Serienbriefe mit Daten aus einem Excelsheet erstellen. Dann sollen die Briefe als einzelne Word-Dokumente in einem Ordner abgespeichert werden. Dazu soll ein Ordner, benannt...
  7. Mit VBA einzelne Tabellenblätter aus Excel separat speichern

    in Microsoft Excel Hilfe
    Mit VBA einzelne Tabellenblätter aus Excel separat speichern: Hallo zusammen, ich bräuchte dringend ein Makro in Excel, welches mir täglich die Tabellenblätter D1 bis D7 als neue/separate Excel-Dateien im csv Format in einem Ordner speichert (pro D eine...
  8. Serienbrief erstellen und Tabellen einzeln als Anhang einfügen

    in Microsoft Word Hilfe
    Serienbrief erstellen und Tabellen einzeln als Anhang einfügen: Hallo alle zusammen, ich habe folgendes Projekt bekommen und suche zur Zeit einen Lösungsansatz (keinen vollständigen Code): Es gibt eine Excel-Tabelle mit mehreren Anlagen. Jede Anlage hat...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden