Verwenden von Makros in geschützten Arbeitsmappen (Microsoft Excel)
Lori hatte ein Problem mit einer Arbeitsmappe, die sie mit anderen teilen wollte. Die Arbeitsmappe enthielt ein Makro, aber wenn die Arbeitsmappe geschützt ist, um zu verhindern, dass andere Änderungen an der Arbeitsmappe vornehmen, meldet Lori, dass „das Makro deaktiviert ist“.
Das genaue Problem von Lori ist etwas schwer zu reproduzieren, da Tests zeigen, dass Makros sowohl in geschützten Arbeitsblättern als auch in geschützten Arbeitsmappen weiterhin verfügbar sind. Sie können weiterhin das Dialogfeld Makros anzeigen und die Liste der verfügbaren Makros anzeigen. Sie können weiterhin eines der Makros auswählen und ausführen.
Natürlich ist das Anzeigen und Ausführen der Makros möglicherweise nicht Loris Problem. Es kann sein, dass das Makro bei Verwendung in einem geschützten Arbeitsblatt nicht ordnungsgemäß ausgeführt wird. In diesem Fall tritt das Problem normalerweise nur auf, wenn das Makro versucht, eine Aktion auszuführen, die den auf das Arbeitsblatt angewendeten Schutz verletzt. Wenn der Schutz beispielsweise nicht zulässt, dass Zeilen oder Spalten gelöscht werden und das Makro dies versucht, funktioniert dies nicht.
In diesem Fall besteht die Lösung darin, Ihr Makro so zu ändern, dass es den Schutz des Arbeitsblatts aufhebt, bevor Änderungen vorgenommen werden. Das Folgende zeigt die Grundlagen, wie dies gemacht wird:
Sub ModifyProtectedSheet() ActiveSheet.Unprotect password:="yourpassword" 'work on the worksheet here ActiveSheet.Protect password:="yourpassword", _ DrawingObjects:=True, Contents:=True, Scenarios:=True End Sub
In der ersten Zeile dieses Beispiels wird der Schutz des Arbeitsblatts aufgehoben. Anschließend können Sie die Verarbeitung durchführen. In der letzten Zeile wird das Arbeitsblatt erneut geschützt. Wenn Ihre Arbeitsmappe Schutz verwendet, kann dieselbe Technik für die Arbeitsmappe verwendet werden: Schützen Sie sie, nehmen Sie Änderungen vor und schützen Sie sie erneut.
Loris Problem könnte auch mit dem Wort „Teilen“ zusammenhängen, das sie in ihrer Problemstellung verwendete. Wenn Lori durch Freigeben bedeutet, Arbeitsmappe freigeben zu verwenden, um die Arbeitsmappe für andere „gemeinsam nutzbar“ zu machen, wird eine Warnung angezeigt, wenn die Freigabe aktiviert ist. Die Warnung zeigt an, dass Makros in freigegebenen Arbeitsmappen nicht „angezeigt oder bearbeitet“ werden können. Dies bedeutet jedoch nicht, dass die Makros deaktiviert sind, da Sie das Dialogfeld Makros weiterhin anzeigen können, um eine Liste der Makros anzuzeigen und eines zum Ausführen auszuwählen. Sie können den VBA-Editor jedoch nicht anzeigen und den tatsächlichen Makrocode anzeigen.
Schließlich gibt es einige Funktionen von Excel, die in freigegebenen Arbeitsmappen einfach deaktiviert sind. Wenn Ihr Makro versucht, eine dieser deaktivierten Aktionen auszuführen, funktioniert es nicht ordnungsgemäß. Dies ist eine Einschränkung von Excel, und es kann nichts dagegen unternommen werden. (Weitere Informationen darüber, was in einer freigegebenen Arbeitsmappe nicht möglich ist, finden Sie in der Online-Hilfe. Suchen Sie nach „freigegebenen Arbeitsmappen, Einschränkungen“.) Die einzige Möglichkeit, diese Einschränkungen zu umgehen, besteht darin, die Arbeitsmappe nicht freizugeben.
_Hinweis: _
Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.
ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.
Dieser Tipp (2833) gilt für Microsoft Excel 97, 2000, 2002 und 2003. Eine Version dieses Tipps für die Multifunktionsleistenschnittstelle von Excel (Excel 2007 und höher) finden Sie hier: