Ich erhalte gelegentlich eine XLS-Datei, die ein Makro enthält, das ich verwenden sollte. Wenn ich dem Absender nicht vollständig vertraue, möchte ich die Quelle des Makros überprüfen, um zu überprüfen, ob es tatsächlich nur das tut, was es soll.
In Excel 2010 ist die Schaltfläche "Bearbeiten" unter "Makros anzeigen" jedoch deaktiviert, es sei denn, ich aktiviere zuerst Makros für das Blatt. Wenn ich jedoch zuerst Makros aktiviere, kann ich höchstens erst nach Abschluss dieses Codes Informationen über schädlichen Code erhalten Laufen...
Wie kann ich die Quelle des Makros anzeigen, bevor ich Makros für das Dokument aktiviere?
Alt
+F11
das! SECURITY WARNING ... Enable Content
Banner " " verschwinden kann, was bedeutet, dass die Codeausführung jetzt aktiviert ist. Das ist irreführend. Sie können dies demonstrieren, indem Sie ein Dokument mit einemon_open()
Modul erstellen . Sie werden in der Lage seinAlt
+F11
in und den Code zu überprüfen , ohne das Ereignis zu feuern.Während die Antworten von Mokubai und hBy2Py großartig erscheinen und es Ihnen tatsächlich ermöglichen, den VBA-Editor anzuzeigen, können Sie den Code zumindest in Excel von Microsoft Office Professional Plus 2016 immer noch nicht anzeigen.
Ich besitze zufällig diese Version und war mir sicher, dass ich ein bösartiges XLS erhalten habe und es überprüfen wollte. Nachdem ich es in Excel geöffnet hatte, wurde es wie gewohnt im abgesicherten Modus geöffnet, und natürlich hatte ich nicht die Absicht, diesen Modus zu schließen. Als ich den VBA-Editor wie von anderen Befragten angegeben geöffnet habe, wurde mir ... ein leerer VBA-Editor angezeigt . Im Bereich "Projektexplorer" wurde hilfreich "Keine offenen Projekte" angezeigt, obwohl ich die XLS-Datei noch nicht geschlossen habe. Nur zum Testen habe ich das zweite Dokument (eines meiner Werke) geöffnet und es wurde sofort im VBA-Editor angezeigt und war (ordnungsgemäß) völlig frei von VBA. Das Dokument aus dem Internet wurde jedoch nicht im VBA-Editor aufgeführt .
Ich habe einige Zeit damit verschwendet, herauszufinden, warum das so ist, und keinen Grund gefunden. Es scheint, dass meine Excel-Edition einfach keine VBA-Module an den VBA-Editor sendet, wenn das Dokument im abgesicherten Modus geladen wird. Leider fehlt dem VBA-Editor die Funktion "VBA aus Office-Dokument öffnen", sodass klar ist, dass Excel hier das Gehirn ist und zuerst das XLS entpacken / dekodieren / muss.
Die Lösung erwies sich als recht einfach.
Ribbon
->Developer
->MacroSecurity
File
->Options
->SecurityCenter
(letzte Optionsgruppe) ->Settings
->Macros
)Auswirkungen:
Falls Sie neugierig sind: Ja, es war in der Tat ein bösartiges, winziges Beispiel:
Übrigens. Wie Sie sehen, habe ich den Einstiegspunkt sofort auskommentiert und das Dokument erneut gespeichert, falls ich die Ausführung der Makros zu einem späteren Zeitpunkt zulasse.
quelle