Grüezi Walti
In zwei Schritten mache ich es so:
a) Das Erstellen von Makros in einer Datei (= Arbeitsmappe) verhindern:
Im Projekt-Explorer Rechtsklick auf das entsprechende Projekt.
Eigenschaften von VBAProject…
Register Schutz – Anzeige sperren und Kennwort eingeben
Das Erstellen und Ansehen von Makros ist dann nur mit Passwort möglich, auch wenn die Datei kopiert wird.
b) Das Aufrufen von Makros mit Passwort ist etwas umständlicher. Ich mache es jeweils mit einem zusätzlichen Makro „MakroSchutz“, das von den einzelnen Makros aufgerufen wird: Makro1 und Makro2 können nur gestartet werden, wenn das Passwort „abcde“ eingegeben wird. – Das Passwort wird bestimmt unter
Const passwort1
Dim passwort$
Const passwort1 = "abcde"
Private Sub MakroSchutz()
passwort = InputBox("Bitte Passwort eingeben!")
End Sub
Sub Makro1()
Call MakroSchutz
If passwort <> passwort1 Then Exit Sub
MsgBox "hallo"
End Sub
Sub Makro2()
Call MakroSchutz
If passwort <> passwort1 Then Exit Sub
ActiveCell.FormulaR1C1 = "hallo"
End Sub
Wenn Du Deine Makros in verschiedenen Modulen hinterlegst, musst Du in jedes Modul die ersten fünf Zeilen einfügen:
Dim passwort$
Const passwort1 = "abcde"
Private Sub MakroSchutz()
passwort = InputBox("Bitte Passwort eingeben!")
End Sub
Ich hoffe, das hilft Dir. Grüsse Niclaus