123 Aufrufe
Gefragt in Tabellenkalkulation von
Hallo,

ich habe folgendes Problem und nun ist der Punkt erreicht an dem mir das gewaltig gegen den Strich geht.

In meinen Excel-Tabellen sind die Tabellenblätter geschützt und ebenfalls das VBA mit einem Passwort versehen. Jetzt habe ich den Verdacht das hier jemand sein unwesen treibt und Werte ändert, Zeilen löscht und sogar die Tabellen mit älteren Versionen überschreibt.

Da jeder nur Zugriff auf seinen eigenen Windows Account hat würde dieser jener der die Änderung vornimmt eine Spur hinterlassen. Leider habe ich keine Ahnung welche Möglichkeiten es gibt.

Ich hoffe sehr um eure Hilfe!

Dank euch!

4 Antworten

0 Punkte
Beantwortet von computerschrat Profi (24.8k Punkte)
Hallo fat61,

nur um es richtig zu verstehen, die betroffene Datei liegt auf einem PC, zu dem mehrere Benutzer jeweils über ein eigenes Benutzerkonto Zugang haben?

Liegt diese Datei im Verzeichnis C:\User\<Dein Benutzername>\... oder liegt sie an anderer Stelle? Nur wenn sie in deinem Benutzerbereich liegt oder in einem anderen Verzeichnis, auf das Benutzerrechte nur für dich eingerichtet wurden., hat sie benutzerbezogenen Zugriffsschutz.

Zur Prüfung, wann auf die Datei zugegriffen wurde kannst du den Windows Explorer öffnen mit Rechtsklick auf die Kopfzeilen der Spalten weitere Spalten zur Anzeige auswählen. Da solltest du auswählen Änderungsdatum und "Letzter Zugriff". Daran kannst du erkennen, wann die Datei gelesen oder bearbeitet wurde.

Wenn aber die Tabellenblätter geschützt sind und außerdem niemnad auf deinen Windows Account zugreifen kann, dann halte ich es für weniger wahrscheinlich, dass jemand die Datei bearbeitet. Vielleicht wurde ein Backup auf den Rechner zurückgespielt, so dass du wieder einen älteren Stand vorgefunden hast?

Bekommst du beim Aufrufen der Datei eine Fehlermeldung, dass unlesbarer Inhalt in der Datei gefunden wurde? In diesem Fall würde die Datei wiederhergestellt, beim Speichern aber an anderer Stelle im Dateisystem abgelegt und nicht auf dem ursprünglichen Speicherplatz, ohne dass das in einer Meldung deutlich gemacht wird. Damit greifst du immer wieder auf die alte Datei zu.

Gruß computerschrat
0 Punkte
Beantwortet von

Genauer gesagt liegt die Datei in einer Cloud/NAS auf die alle im Netzwerk zugriff haben. Jeder Benutzer im System hat einen eigenen Windows Account und es arbeiten mehrere personen in der Regel nacheinander an der Excel-Datei.

Wenn aber die Tabellenblätter geschützt sind und außerdem niemnad auf deinen Windows Account zugreifen kann, dann halte ich es für weniger wahrscheinlich, dass jemand die Datei bearbeitet. Vielleicht wurde ein Backup auf den Rechner zurückgespielt, so dass du wieder einen älteren Stand vorgefunden hast?

Das war zuerst mein Gedanke, nur ist diesmal aufgefallen, dass ich 5 neue Formulare mit der aktuellsten Version neu gemacht habe und diese auch gespeichert habe. Jetzt war das 4te Formular mit einer älteren Version überschrieben und in der Fatei waren ganze Zeilen gelöscht also war das Formular unbrauchbar. Jetzt war meine Idee das ich die Änderungsverfolgung aktiviere und im Tabellenblatt "Änderungsverlauf" dokumentiert wird wer was gemacht hat.

0 Punkte
Beantwortet von
Hallo fat61

Das Aktivieren der Änderungsverfolgung ist schon mal eine gute Idee. Da siehst du zumindest wer Zeilen löscht. Das schützt dich aber leider nicht vor dem Überschreiben der Datei durch eine ältere Version.

Bei uns im Netzwerk gibt es in den Dateieigenschaften (also im Explorer Rechtsklick auf die Datei) ein Register Sicherheit und darin einen Button Erweitert. Dort kann man erkennen welcher Windows-User die Datei erstellt, also dort als erstes abgelegt hat.

Ich weiß leider nicht ob auch du diese Option hast, das herausfinden zu können. Wenn ja würde ich mit dem Kollegen ein Hühnchen rupfen.

Ansonsten sollte auch schon eine Rundmail an alle Kollegen reichen. "Bitte Datei nicht überschreiben". Oder du lässt dir von der IT einen Netzwerkpfad anlegen wo nur du Schreibrechte besitzt und legst die Vorlagen dort rein.

Gruß Mr. K.
0 Punkte
Beantwortet von
Hallo

Dateiattribute!

Vielleicht hilfreich!

Ordner wählen der zu untersuchenden Dateien

Gruß Michael

Sub ShowFile()
    Dim Dpfad As String, DateiName As String
    Dim Lzeile As Long
    Dim FileO As Object, Files As Object
    Set FileO = CreateObject("Scripting.FileSystemObject")
    Dpfad = OrdnerAuswahl
    DateiName = Dir(Dpfad & "*.*")
    Do While DateiName <> ""
        Set Files = FileO.GetFile(Dpfad & DateiName)
        With Worksheets(1)
            Lzeile = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
            .Cells(Lzeile, 1) = Files.Name
            .Cells(Lzeile, 2) = Files.DateCreated
            .Cells(Lzeile, 3) = Files.DateCreated
            .Cells(Lzeile, 4) = Files.DateLastModified
            .Cells(Lzeile, 5) = Files.DateLastModified
            If .Cells(Lzeile, 4) <> .Cells(Lzeile, 2) Or .Cells(Lzeile, 5) <> .Cells(Lzeile, 3) Then
                .Range(.Cells(Lzeile, 1), .Cells(Lzeile, 6)).Font.ColorIndex = 5
                .Cells(Lzeile, 6) = "*"
            Else
                .Range(.Cells(Lzeile, 1), .Cells(Lzeile, 5)).Font.ColorIndex = 1
            End If
            DateiName = Dir
        End With
    Loop
End Sub
Function OrdnerAuswahl() As String
    On Error Resume Next
    Dim AppShell As Object
    Dim BrowseDir As Variant
    Set AppShell = CreateObject("Shell.Application")
    Set BrowseDir = AppShell.BrowseForFolder(0, "Ordner auswählen", &H1000, 17)
    OrdnerAuswahl = BrowseDir.items().Item().Path & "\"
End Function
...