Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Manuelles Ausführen (ALT+F8) von Makros verhindern

Forumthread: Manuelles Ausführen (ALT+F8) von Makros verhindern

Manuelles Ausführen (ALT+F8) von Makros verhindern
28.02.2003 09:45:34
Lim33
Hallo,

durch die Tastenkombination ALT+F8 oder durchs Menü "Extras/Makro/Makros" kommt man in eine Box, in der man manuell Makros aufrufen kann. In der Box sind alle Prozeduren aufgelistet die ich als Public deklariert habe.

Frage: Wie kann man das manuelle Ausführen dieser Makros verhindern?

Für jede Art von Vorschlägen bin ich natürlich dankbar!

Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Manuelles Ausführen (ALT+F8) von Makros verhindern
28.02.2003 09:47:07
Hajo_Zi

Hallo Lim33

siehe mal FAQ min. ein Vorname wäre schon gut.

Schreivbe nicht Public sondern Private

Gruß Hajo

Re: Manuelles Ausführen (ALT+F8) von Makros verhindern
28.02.2003 09:49:40
Hans W. Hofmann

Wozu stattest Du denn die Mappe mit Makros aus? Damit Sie NICHT verwendet werden? Karl Valentin läßt grüßen ;-)...
Es macht doch keinen Sinn erst Makros auszuliefern und dann das Ausführen verhindern zu wollen, oder doch?


Gruß HW

Anzeige
Re: Manuelles Ausführen (ALT+F8) von Makros verhindern
28.02.2003 09:58:06
Lim33

Hallo HW,

ich möchte natürlich nur das manuelle Ausführen der Makros über diese Box verhindern. Die Makros sollen natürlich ausgeführt werden, allerdings nur durch das Auftreten diverser Ereignisse.

In den Ereignissen werden die Makros mit bestimmten Parametern dann aufgerufen und ausgeführt. Ruft man die Makros durch die Box manuell auf kommt es zu Fehlern.

Gruß Lim33


Anzeige
Re: Manuelles Ausführen (ALT+F8) von Makros verhindern
28.02.2003 10:01:39
Hajo_Zi

Hallo Lim33

"Die Makros sollen natürlich ausgeführt werden, allerdings nur durch das Auftreten diverser Ereignisse."

dann siehe Dir doch mal die Aktionen in VBA unter der Tabelle oder DieseArbeitsmappe an.

Gruß Hajo

Weiss nicht, ob dieses hilft...
28.02.2003 10:41:42
Andreas Walter

aber ich mache folgendes:

Ich habe versch. Makros, die der Anwender aufrufen darf. Ich habe aber andere Makros (Subroutinen), die innerhalb diesen aufrufbaren Makros aufgerufen werden sollten und nicht direkt aufgerufen werden sollten (bzw. können)

Ich mach nicht
sub Haupt
blablabla
Call Intern
blablabla
end sub
Sub Intern
blablabla
end sub

sondern

sub Haupt
blablabla
Call Intern(1)
blablabla
end sub
Sub Intern(param)
blablabla
end sub

Wobei 'param' nicht benötigt wird. Sobald ein Makro ein Parameter in () braucht, erscheint dieses NIHCT im ALT-F8 Fenster

Anzeige
Re: Manuelles Ausführen (ALT+F8) von Makros verhindern
28.02.2003 11:43:21
Lim33

Hallo Hajo,

"dann siehe Dir doch mal die Aktionen in VBA unter der Tabelle oder DieseArbeitsmappe an"

Was willst Du mir damit Sagen? Ich denke nicht, dass dies die Lösung für mein Problem ist.

P.S.: Ich kenne die Ereignisse in VBA!

Gruß Lim33

Re: Manuelles Ausführen (ALT+F8) von Makros verhindern
28.02.2003 13:16:09
Hans W. Hofmann

Naja, dann ist Dir mit dem Hinweis von Hajo Private/Public ja geholfen....


Gruß HW

Anzeige
Re: Weiss nicht, ob dieses hilft...
28.02.2003 16:02:49
basti

dann deklarier doch alles als private !?!?!?!?
mfg basti

Danke für den Tipp - man lernt nie aus! (nT)
03.03.2003 09:49:27
Andreas Walter

Danke für den Tipp - man lernt nie aus! (nT)

;
Anzeige

Infobox / Tutorial

Manuelles Ausführen von Makros in Excel verhindern


Schritt-für-Schritt-Anleitung

  1. Öffne die Excel-Datei, in der Du die Makros verwalten möchtest.

  2. Klicke auf Entwicklertools in der Menüleiste. Falls die Entwicklertools nicht sichtbar sind, aktiviere sie über die Excel-Optionen.

  3. Wähle Visual Basic, um den VBA-Editor zu öffnen.

  4. Suche das Makro, das Du vor dem manuellen Aufruf schützen möchtest.

  5. Ändere die Deklaration des Makros von Public zu Private. Hier ein Beispiel:

    Private Sub MeinMakro()
       ' Dein Code hier
    End Sub
  6. Schließe den VBA-Editor und teste das Makro, indem Du es über ein Ereignis aufrufst, um sicherzustellen, dass es wie gewünscht funktioniert.

  7. Versuche jetzt, das Makro mit der Tastenkombination ALT + F8 aufzurufen. Es sollte nicht mehr in der Liste erscheinen.


Häufige Fehler und Lösungen

  • Makro wird nicht aufgerufen: Stelle sicher, dass das Makro als Private deklariert ist. Öffentlich deklarierte Makros erscheinen in der ALT + F8-Liste.
  • Fehlermeldungen beim Aufruf: Prüfe, ob alle erforderlichen Parameter korrekt übergeben werden, wenn Du die Makros durch Ereignisse aufrufst.

Alternative Methoden

  1. Ereignisgesteuertes Aufrufen: Statt Makros manuell über ALT + F8 auszuführen, kannst Du sie an Ereignisse binden, wie zum Beispiel Workbook_Open oder Worksheet_Change.

    Beispiel:

    Private Sub Workbook_Open()
       Call MeinMakro
    End Sub
  2. Verwendung von Strg + Alt + F8: Diese Kombination kann verwendet werden, um ein Makro auszuführen, das nicht in der ALT + F8-Liste angezeigt wird.


Praktische Beispiele

Hier ist ein einfaches Beispiel für ein Makro, das nur über ein Ereignis aufgerufen werden kann:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("A1")) Is Nothing Then
        Call MeinSpeziellesMakro
    End If
End Sub

Private Sub MeinSpeziellesMakro()
    MsgBox "A1 wurde geändert!"
End Sub

In diesem Beispiel wird das Makro MeinSpeziellesMakro nur ausgeführt, wenn sich der Wert in Zelle A1 ändert.


Tipps für Profis

  • Verwende Parameter: Wenn Du Makros mit Parametern erstellst, erscheinen sie nicht in der ALT + F8-Liste. Das ist besonders nützlich, um die Sichtbarkeit zu reduzieren.
  • Verwalte den Zugriff auf Makros: Du kannst auch Benutzerrechte in Excel festlegen, um den Zugriff auf bestimmte Makros weiter einzuschränken.
  • Regelmäßige Überprüfung: Überprüfe regelmäßig Deine Makros und deren Sichtbarkeit, um sicherzustellen, dass sie nur wie beabsichtigt verwendet werden.

FAQ: Häufige Fragen

1. Wie kann ich Makros wieder sichtbar machen?
Du kannst die Deklaration von Private zurück auf Public ändern, um die Makros erneut in der ALT + F8-Liste anzuzeigen.

2. Was ist der Unterschied zwischen Public und Private Makros?
Public Makros können von überall in der Arbeitsmappe aufgerufen werden, während Private Makros nur innerhalb des Moduls, in dem sie definiert sind, aufgerufen werden können.

3. Welche Tastenkombination kann ich verwenden, um Makros auszuführen?
Neben ALT + F8 kannst Du auch Strg + Alt + F8 verwenden, um ein Makro auszuführen, das nicht in der ALT + F8-Liste erscheint.

4. Wie kann ich die Sichtbarkeit von Makros in Excel verbessern?
Durch die Verwendung von Parametern in Deinen Makros kannst Du ihre Sichtbarkeit in der ALT + F8-Liste reduzieren, was die Verwendung durch andere Benutzer einschränkt.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige