Dokumentieren

4 Möglichkeiten zum Schutz von VBA-Code (Visual Basic for Applications)

Der von Ihnen geschriebene VBA-Code ist das Herz und die Seele Ihrer Tabelle. Der VBA-Code sollte geschützt werden, um sicherzustellen, dass er nicht gestohlen oder ohne Ihr Wissen verwendet wird. In diesem Beitrag werden verschiedene Möglichkeiten zum Schutz Ihres VBA-Codes beschrieben, damit nur SIE problemlos darauf zugreifen können.

Warum ist Ihnen der Schutz von VBA-Code wichtig?

VBA ist eine Makrosprache, mit der Sie automatisierte Aufgaben oder Aktionen in Excel, Word und PowerPoint erstellen können. Es gibt mehrere Gründe, warum Sie Ihren VBA-Code schützen sollten:

  • So schützen Sie Ihren VBA-Code vor versehentlichen Änderungen. VBA-Code ist ein leistungsstarkes Tool für Excel-Benutzer, kann aber auch eine Quelle der Frustration für diejenigen sein, die ihn nicht verwenden. Wenn Sie den VBA nicht mit einem Kennwort schützen, können andere Benutzer Ihrer Arbeitsmappe auf den Code zugreifen und Änderungen daran vornehmen, ohne zu wissen, was sie tatsächlich tun. Sie möchten Ihren VBA-Code nicht debuggen, da dies mühsam sein kann – es kann Stunden dauern, den Grund herauszufinden, und dann noch mehr Zeit!
  • So schützen Sie Ihr geistiges Eigentum. VBA-Code kann für einige Unternehmen sehr wertvoll sein. Wenn jemand anderes auf Ihre Tabelle zugreift und die von Ihnen verwendete Funktionalität kopiert, könnte er sie möglicherweise als seine eigene Arbeit ausgeben und an viele Unternehmen verkaufen. Schützen Sie Ihren wertvollen Quellcode mit Sicherheitsmaßnahmen. Machen Sie es niemandem leicht, ihn zu stehlen oder zu kopieren.
  • Um sich vor der Verwendung Ihrer Arbeit durch andere zu schützen. Wenn Sie über einen wertvollen VBA-Code verfügen, der Ihre Arbeit einfacher oder effizienter macht, möchten Sie ihn möglicherweise nur für den persönlichen Gebrauch schützen.

Beachten Sie, dass es verschiedene Möglichkeiten gibt, Ihren VBA-Code zu schützen. Allerdings schützen nicht alle Ihren Code auf die gleiche Weise. Es liegt an Ihnen und an dem, was Sie für Ihre Anforderungen am besten halten.

#1 VBA-Code in Excel mit dem VBAProject-Tool durch ein Passwort schützen

In diesem Teil wird erläutert, wie Sie die VBA-Projektschutzeinstellungen verwenden können, um Ihren VBA-Code bis zu einem gewissen Grad vor neugierigen Blicken und Manipulation zu schützen.

  • Sicherheitsstufe: Schwach; Es gibt Tools wie VBA-Passwort-Entferner mit dem das Passwort innerhalb von Minuten entsperrt werden kann;
  • Schwierigkeit: Einfach;
  • Kosten: Kostenlos;

Schritt 1. Wählen Sie „Visual Basic“ aus dem Menü „Entwickler“ in Excel.

Öffnen Sie das Visual Basic-Panel über die Excel-Entwicklerregisterkarte

Schritt 2. Um Ihr VBA-Projekt zu sperren, klicken Sie in der Leiste auf „Tools“ und wählen Sie dann „VBAProject-Eigenschaften“.

Wählen Sie VBAProject-Eigenschaften zum Festlegen des Passworts aus

Nachdem Sie auf diesen Menüpunkt geklickt haben, sollte das folgende Dialogfeld angezeigt werden:

Die Hauptschnittstelle der VBAProject-Eigenschaften

Standardmäßig ist die Registerkarte „Allgemein“ ausgewählt, klicken Sie jedoch auf die Registerkarte „Schutz“.

Schritt 3. Aktivieren Sie „Projekt für Anzeige sperren“, geben Sie anschließend in beide Felder zweimal Ihr Kennwort ein und klicken Sie auf „OK“.

Sperren Sie das VBA-Projekt für die Anzeige und legen Sie ein Kennwort fest, um den VBA-Code zu schützen

Schritt 4. Speichern Sie es und öffnen Sie die Excel-Datei erneut. Sie können feststellen, ob der VBA-Passwortschutz ordnungsgemäß aktiviert wurde, indem Sie auf Ihr VBA-Projekt doppelklicken. Wenn Sie Ihr VBA-Projekt mit einem Passwort schützen, verhindert dies, dass jemand versehentlich Änderungen vornimmt.

Zum Anzeigen von VBA-Code ist ein Kennwort erforderlich

#2 Verwenden Sie VBA-Verschleierung, um Ihren Makrocode zu schützen

VBA-Verschleierung ist die Kunst, Ihren VBA-Code unlesbar, aber dennoch funktionsfähig zu machen. Dabei werden Ihre vorhandenen Makros mit mehreren Verschleierungsebenen geändert, wodurch es schwierig wird, die zugrunde liegende Logik zu verstehen. Fortgeschrittene VBA-Verschleierungssysteme verwenden eine Reihe fortschrittlicher Verschleierungstechniken, wodurch die Rückverfolgung und Wiederherstellung erheblich schwieriger wird.

  • Sicherheitsstufe: Mittel; Jemand wird sich dennoch die Zeit nehmen und genügend Ressourcen aufwenden können, um den Code wiederherzustellen;
  • Schwierigkeit: Mittel; Abhängig vom Niveau;
  • Kosten: Kostenloser VBA-Obfuscator /Prämie;

Sie können die VBA-Verschleierung zusammen mit der Technik Nr. 1 verwenden, bei der das Modul zunächst verschleiert und dann mit einem Kennwort gesichert wird. Bitte beachten Sie, dass die Verschleierung irreversibel ist. Erstellen Sie daher vor dem Fortfahren eine Sicherungskopie der Quelldatei. Denken Sie auch daran, dass die fehlerfreie Ausführung des verschleierten Codes nicht garantiert werden kann. Testen Sie ihn daher gründlich, bevor Sie ihn veröffentlichen. Verwenden Sie zum Verschleiern einen einzelnen Teil des Projekts. Nachdem der erste Modul-Verschleierungstest erfolgreich war, fahren Sie mit dem zweiten fort.

#3 VBA-Code in Dynamic-Link Library (DLL) konvertieren

Compiler wie Visual C++ und Visual Basic erstellen Anwendungen, die schwer zu knacken sind. Dies liegt daran, dass der Code in ausführbare Dateien oder Dynamic Link Library-Dateien kompiliert wird. Wir können den VBA-Code also auch in eine Dynamic Link Library-Datei kompilieren und ihn dann in Excel verwenden.

  • Sicherheitsstufe: Hoch;
  • Schwierigkeit: Mittel;
  • Kosten: Kostenlos;

Diese Schutzmethode wird dringend empfohlen, ist aber nicht 100 %ig garantiert. Informationen zum Kompilieren finden Sie in den Anweisungen auf VbaCompiler.com: 10 Schritte zum Kompilieren von VBA-Code in native Windows-DLL .

Kompilierung des VBA-Codes einer Excel-Datei erfolgreich mit VbaCompiler für Excel abgeschlossen

#4 Konvertieren Sie VBA in C oder C++

Das Übersetzen Ihrer Makros in C oder C++ ist schwieriger als das Reverse Engineering in VBA. Wenn Sie Ihren Code schützen möchten, ist dies der beste Weg.

  • Sicherheitsstufe: Höchste; Es ist fast unmöglich, den Code ohne die entsprechenden Rechte zu erhalten; aber auch das ist nicht 100 % garantiert;
  • Schwierigkeit: Kompliziert und zeitaufwändig; Da VBA und C/C++ so unterschiedliche Sprachen sind, ist es schwieriger, da Sie viel Aufwand betreiben müssen.

Abschluss

Die Verwendung von Makros ist eine großartige Möglichkeit, die Entwicklung erweiterter Funktionen zu optimieren. Leider besteht dadurch die Gefahr, dass Ihr Code von anderen gestohlen oder kopiert wird. Der Artikel beschreibt Methoden, mit denen Sie verhindern können, dass andere Benutzer Ihren VBA-Code stehlen oder manipulieren. Bitte beachten Sie, dass der VBA-Code-Schutz kein absolut sicheres Sicherheitssystem ist, aber dennoch einen gewissen Schutz vor Gelegenheitsangreifern bietet.

Foto von Susanna

Susanna

Susanna ist Content Managerin und Autorin bei Filelem. Sie ist seit vielen Jahren erfahrene Lektorin und Buchlayout-Designerin und interessiert sich für das Ausprobieren und Testen verschiedener Produktivitätssoftware. Sie ist auch ein großer Kindle-Fan, verwendet Kindle Touch seit fast 7 Jahren und trägt Kindle fast überallhin mit sich. Vor nicht allzu langer Zeit hatte das Gerät das Ende seiner Lebensdauer erreicht, also kaufte Susanna voller Freude einen Kindle Oasis.

Verwandte Artikel

Schaltfläche „Zurück zum Anfang“