Machen Sie das Finden / Lesen einer Formel unmöglich

0

Ich habe eine Tabelle zur Durchführung verschiedener Berechnungen entwickelt, die unsere Mitarbeiter vervollständigen und dann an Kunden / Wettbewerber verteilen. Um das "geistige Eigentum" der Tabelle zu schützen, möchte ich es dem Empfänger völlig unmöglich machen, die Berechnungen anzuzeigen, die zur Rückgabe der Ergebnisse verwendet wurden.

Alle Berechnungen / Formeln befinden sich auf einem separaten Blatt zum "Hauptteil" des Formulars.

Überlegungen, die ich mit ihren Stürzen angestellt habe, schließen ein;

Einstellen der Visible Eigenschaft innerhalb des VBA-Editors zu 2 - xlSheetVeryHidden aber jeder, der irgendetwas über sie hat, könnte dies leicht umgehen.

Passwort zum Schutz der Arbeitsmappe / des Arbeitsblatts - auch hier kann Google sehr einfach vorgehen Problemumgehungen (ausprobiert, getestet und verifiziert).

Schreiben eines VBA-Skripts zum Zerstören von Berechnungen / Formeln auf der Worksheet_Activate() Sub, aber einfach Makros nicht zuzulassen, wenn die Datei geöffnet wird, umgeht dies.

Ich habe sogar darüber nachgedacht, eine VBA zu schreiben, um das Berechnungsblatt zu erstellen, wenn die Datei geöffnet wird, um den Benutzer zu zwingen, Makros zu aktivieren, was bedeutet, dass sie zerstört werden könnten, wenn er versucht, auf sie zuzugreifen. Dies wäre jedoch nicht nur eine große Aufgabe an sich, sondern jemand mit genügend Zeit könnte einfach alle Daten aus dem "Build" -Unter des VBA-Codes ziehen.

Selbst wenn ich dies schreibe, verliere ich schnell, hoffe aber, dass es eine mir unbekannte Methode gibt, über die jemand in dieser Community gestolpert ist / die sich selbst implementieren musste.

Hinweis; Die Datei muss im Excel-Format an die Clients verteilt werden und kann nicht als PDF-Datei usw. gesendet werden.

Jonny Wright
quelle
Haben Sie darüber nachgedacht, den Code zu verschleiern? Es wird nicht unmöglich sein, es zu entschlüsseln, aber es wäre sehr schwierig. das heißt, wenn in diesem Fall eine Verschleierung möglich ist.
superuser
Müssen die Empfänger Tabellenkalkulationen mit proprietären Formeln erhalten oder dienen die Formeln nur zur Verarbeitung der Mitarbeitereingaben und könnten vor der Verteilung durch resultierende Werte ersetzt werden?
fixer1234
fixer1234: Die Formel könnte vor der Verteilung durch resultierende Werte ersetzt werden. Möglicherweise müssen jedoch Änderungen vorgenommen werden, bei denen die resultierenden Werte auf ihren ursprünglichen Zustand zurückgesetzt werden.
Jonny Wright
techaddict: Dies scheint eine Möglichkeit zu sein. Wenn ich jedoch 5 Minuten recherchiert habe (ich hatte noch nie zuvor davon gehört!), würde dies bedeuten, dass ich die gesamte Formel mit VBA erstellen muss? Derzeit werden alle Berechnungen nur auf einem Blatt in Zellen ausgeführt, nicht in VBA
Jonny Wright
Die Antwort unten von @teylyn ist die richtige Antwort. Dies ist kein sicherer Weg, um Dinge zu tun. Haben Sie darüber nachgedacht, die Berechnungen durchzuführen und ein Makro einzufügen, das ausgeführt wird, und die Werte / Ergebnisse in eine neue Arbeitsmappe zu extrahieren, die keine Formeln enthält, die dann frei gesendet werden können?
Raystafarian

Antworten:

2

Es gibt keine Möglichkeit, eine Excel-Datei vollständig zu schützen. Der Schutz von Excel-Arbeitsblättern und sogar von VBA-Code sollte als Schutz vor versehentlichen Änderungen und nicht als vorsätzliche Absicht angesehen werden. Das Internet ist voll von kostenlosen und kostenpflichtigen Tools, um böswillige Absichten zu unterstützen.

Die einzige Möglichkeit, eine Excel-Datei sicher aufzubewahren, besteht darin, sie nicht anderen zur Verfügung zu stellen, die sich in sie einhacken könnten.

teylyn
quelle