Verhindern, dass jemand ein geschütztes Arbeitsblatt (Microsoft Excel) neu erstellt
Jack erstellt Arbeitsblätter, die er an andere Mitglieder seiner Gruppe weiterleitet, damit diese Informationen eingeben und das Arbeitsblatt an ihn zurücksenden können. Er schützt die Arbeitsblätter, wurde jedoch einige Male von Benutzern verbrannt, die das Arbeitsblatt durch Kopieren und Einfügen vollständig neu erstellt haben. Es ist sehr zeitaufwändig, alles zu überprüfen, um sicherzustellen, dass die zurückgegebenen Arbeitsblätter die Originale sind. Daher sucht Jack nach einer Möglichkeit, die Möglichkeit zum Kopieren und Einfügen der Arbeitsblätter zu entfernen.
Das Deaktivieren des Kopierens und Einfügens ist theoretisch einfach genug. Sie müssen lediglich ein kurzes Makro wie das folgende im ThisWorkbook-Objekt verwenden:
Private Sub Worksheet_Deactivate() If ActiveSheet.ProtectContents = True Then Application.CutCopyMode = False End If End Sub
Die Verwendung dieses Makros löscht die Zwischenablage im Wesentlichen jedes Mal, wenn jemand das Arbeitsblatt durch Auswahl eines anderen Arbeitsblatts oder einer anderen Anwendung deaktiviert.
Dies bietet natürlich nur den rudimentärsten Schutz. Ein bestimmter Benutzer kann das Arbeitsblatt weiterhin mit Bearbeiten | kopieren Blatt verschieben oder kopieren, oder sie können Makros beim Starten der Arbeitsmappe deaktivieren und dadurch Ihre Routine zum Löschen der Zwischenablage deaktivieren.
Vielleicht ist es besser zu sehen, wie Geschäfte in der Organisation gemacht werden. Wenn Sie nicht möchten, dass Personen das Arbeitsblatt kopieren, teilen Sie dies ihnen im Voraus mit und stellen Sie sicher, dass sie wissen, dass Sie keine Duplikate akzeptieren.
Es gibt sehr einfache Möglichkeiten, um zu überprüfen, ob das, was Sie zurückerhalten, ein Duplikat ist. Hier sind einige davon:
-
Fügen Sie eine Formel in eine Zelle ein und verbergen Sie den Zelleninhalt während Ihres Schutzvorgangs. Wenn Sie das Arbeitsblatt zurückerhalten, heben Sie den Schutz des Arbeitsblatts auf und die Formel ist nicht vorhanden. Das Arbeitsblatt ist eine Kopie.
-
Schützen Sie das Arbeitsblatt mit einem Passwort. Wenn Sie den Schutz des Arbeitsblatts später nicht mit demselben Kennwort aufheben können, wissen Sie, dass jemand anderes das Arbeitsblatt kopiert und sein eigenes Kennwort verwendet hat.
-
Lassen Sie Ihr Arbeitsblatt versteckte Formeln verwenden, um auf Daten in einem versteckten Arbeitsblatt zuzugreifen. Wenn der Benutzer das Arbeitsblatt kopiert, wird das ausgeblendete Arbeitsblatt nicht in die neue Arbeitsmappe kopiert, sodass die Formeln nicht die richtigen Antworten geben.
-
Fügen Sie ein Makromodul in die Arbeitsmappe ein und schützen Sie das Modul. Das Modul muss nichts tun, aber wenn die Arbeitsmappe, die Sie zurückerhalten, nicht über das geschützte Modul verfügt, handelt es sich um eine Kopie.
-
Fügen Sie dem benutzerdefinierten Eigenschaftenbereich der Arbeitsmappe etwas hinzu. Wenn sich die benutzerdefinierte Eigenschaft nicht in der Arbeitsmappe befindet, die Sie zurückerhalten, stehen die Chancen gut, dass die Arbeitsmappe nicht das Original ist.
Sie können auch versuchen, die Zellenschutzeigenschaft vor dem Kennwortschutz für Ihr Arbeitsblatt auf Ausgeblendet zu setzen. Benutzer können die Ergebnisse der Zellen anzeigen, die Formeln jedoch nicht. Wenn sie den Inhalt kopieren und an anderer Stelle einfügen, werden die Formeln nicht übertragen, sondern nur die Ergebnisse. Dies ist in der zurückgegebenen Arbeitsmappe sehr leicht zu erkennen.
_Hinweis: _
Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.
ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.
Dieser Tipp (3322) gilt für Microsoft Excel 97, 2000, 2002 und 2003. Eine Version dieses Tipps für die Multifunktionsleistenschnittstelle von Excel (Excel 2007 und höher) finden Sie hier: