Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Makro_open bei UserForm deaktiviert?





Frage

Hallo Jungs, ich habe ein Userform, dass den User durch eine Reihe Fragen führt, quasi ein Excel Fragebogen. Nun würde ich gerne in Tabelle 1 eine kurze Info anzeigen lassen (einfach statisch in die Zelle geschrieben) wie man die Makros aktiviert. Wenn die Makros bereits aktiviert sind, also die Sicherheitsstufe niedrig ist, soll dieser Text verschwinden und der Benutzer das UserForm angezeigt bekommen. Das alles ohne, dass er es sieht. Die Umsetzung ist eigentlich recht simple, aber er führt das worksheet_open nicht aus, als ob das Ereignis gar nicht stattfinden würde. Hat das schonmal jemand erlebt und kann mir einen Tip geben? Danke und viele Grüße, guethi

Antwort 1 von guethi

Hallo @ all,

ich muss das gerade nochmal hochschieben...könnt ihr den Fehler nachvollziehen und mit einen Tips zur Lösung geben?
Es ist ein Tool, das Projektmigliedern auf CD gegeben werden soll und ich fänd´s ganz sexy, wenn die xls per autorun aufgerufen wird und dann das Userform von selbst startet.
Corros, JöKe...;-)?

Beste Grüße,


guethi (am Anfang einer langen Nacht)

Antwort 2 von coros

Moin guethi,

Du hättest, sofern Du bereits einen VBA Code einsetzt, diesen hier mal hinschreiben sollen, damit man schauen kann, wo Du eventuell einen Fehler gemacht hast.

Nachfolgend mal ein Beispielcode, der beim Schließen der Datei in dem ersten Tabellenblatt in Zelle A1 einen Text einträgt. Wenn nun ein Benutzer die Datei öffnet und die Makros deaktiviert, sieht er den Text in Zelle A1. Aktiviert er die Makros wird der Text aus Zelle A1 gelöscht und die UserForm mit dem Namen "UserForm1" wird aufgerufen. Kopiere den Code in das VBA Projekt "DieseArbeitsmappe" und passe ihn auf Deine Gegebenheiten (UserFormname, Tabellenblattname, Ausgabezelle) an.

Option Explicit

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets(1).Range("A1") = "Sie haben die Makros deaktiviert. Zum Arbeiten mit dieser Datei müssen diese aber aktiviert sein."
ThisWorkbook.Save
End Sub

Private Sub Workbook_Open()
Sheets(1).Range("A1").ClearContents
UserForm1.Show
End Sub

Eventuell hilft Dir der Code ja schon mal weiter. Wenn nicht, wie schon einleitend geschrieben, Deinen Code posten oder etwas mehr über Deine Gegebenheiten erklären und was genau beim Öffnen mit und ohne Makro geschehen soll.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 3 von guethi

Gegen Dummheit ist kein Kraut gewachsen...ich hab´s nicht in die Arbeitsmappe, sondern vor den Quellcode des Userform geschrieben.Daran lag´s.

Mittlerweile ist das Projekt (erfolgreich) durch.

Danke, coros, für deine Hilfe,

viele Grüße,

guethi

Antwort 4 von RIDDIK

Hallo coros,

ich bin seit einer Woche auf der "Makro"-Entdeckungsreise und würde gern wissen, was das UserForm1 heisst?

Danke
Gruß

Antwort 5 von guethi

Hi Riddik,

ich bin mal so frei und antworte, auch wenn ich nicht angesprochen wurde :-).

Das Userform bietet dir qusi eine grafische Oberfläche für deine Makros, du kannst dir damit eine GUI für deine Makros basteln und es ist eigentlich ganz gut überschaubar.

Ich hab seinerzeit auch ne super Anleitung dazu gefunden, ich werde mal wühlen und dann drauf linken.

Beste Grüße,

guethi

Antwort 6 von RIDDIK

Danke,

das habe ich auch schon rausgefunden, nur ich weiss es leider nicht, wie man eine Befehlsfläche mit einem Befehl verknüpft. Könnte ja sehr nützlich sein.

MfG

Antwort 7 von guethi

Hallo Riddik,


hier
findest du eine gute Anleitung, auch als pdf zum Herunterladen. Im pdf wird ab Seite 45 recht gut auf die Userforms eingegangen. Ich hab mir aus diesem Skript viel angeeignet und finde es recht aufschlussreich.

Gutes Gelingen und beste Grüße,

guethi