Makro in VBA schützen
Wir werden vorstellen, wie Makros davor geschützt werden, in VBA angezeigt und ausgeführt zu werden. Wir werden auch verschiedene Schritte vorstellen, um ein Passwort für unser Makro festzulegen.
Makro in VBA vor Einsichtnahme schützen
Der Schutz unserer Daten ist sehr wichtig; wir wissen nie, wie jemand es verwenden wird. Da wir Arbeitsmappen und Arbeitsblätter schützen können, indem wir ihnen einfach ein Passwort zuweisen, können wir auch ein Makro in Excel vor der Anzeige schützen.
Zuerst fügen wir dem gewünschten Arbeitsblatt eine Befehlsschaltfläche hinzu.
Dann erstellen wir ein einfaches Makro, das wir vor der Anzeige schützen möchten. Wie unten gezeigt, erstellen wir ein einfaches Makro, das einer Zelle innerhalb des Blatts einen Wert zuweist.
Private Sub CommandButton1_Click()
Range("D1").Value = "This is a protected cell"
End Sub
Ausgabe:
Nun wählen wir in VBA in der Menüleiste Extras
aus. Es öffnet sich eine Liste, wählen Sie dann VBAProject Properties
.
Wenn die VBA-Projekteigenschaften geöffnet werden, sehen wir die Registerkarten Allgemein
und Schutz
.
Wir müssen die Registerkarte Schutz
auswählen und das Häkchen bei Projekt zum Anzeigen sperren
setzen.
Wir müssen das Passwort zweimal eingeben, um es zu bestätigen. Und dann müssen wir, wie unten gezeigt, OK
auswählen.
Speichern Sie die Änderungen, schließen Sie die Excel-Datei und öffnen Sie sie erneut. Ein Dialogfeld wird angezeigt, wenn wir versuchen, den Code in VBA anzuzeigen.
Um eine Datei in VBA zu sehen, müssen wir das richtige Passwort eingeben.
Wir können den Code immer noch ausführen, indem wir auf die Befehlsschaltfläche klicken, aber wir können den Code nicht mehr anzeigen oder bearbeiten, es sei denn, wir geben das richtige Passwort ein.
Makro davor schützen, in VBA ausgeführt zu werden
Es gibt Situationen, in denen wir nur ein Makro vor der Ausführung in VBA schützen wollen. Als Passwortschutz-Tool können wir für diesen Fall die Application.InputBox
verwenden.
Wenn ein Benutzer das richtige Wort in das Feld eingibt, wird der Code ausgeführt. Andernfalls wird eine falsche Meldung angezeigt und die Ausführung des Codes gestoppt.
Lassen Sie uns ein Beispiel durchgehen, in dem wir versuchen werden, einer bestimmten Zelle in Excel mithilfe von VBA einen Wert zuzuweisen. Wie unten gezeigt, verwenden wir die obige Methode, um den VBA-Code vor der Ausführung zu schützen.
Sub Pass()
Dim password As Variant
passcode = Application.InputBox("Enter Pass Code", "Password Protected")
Select Case passcode
Case Is = False
Case Is = "password"
Range("B1").Value = "Code executed!"
Case Else
MsgBox "Incorrect Pass Code"
End Select
End Sub
Ausgabe:
Auf diese Weise können wir unser Makro ganz einfach mit Hilfe von VBA vor dem Anzeigen und Ausführen schützen.