Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Makros deaktiviert - Tabellenblatt nicht ausblenden

Frage Microsoft Microsoft Office

Mitglied: xaumichi

xaumichi (Level 1) - Jetzt verbinden

31.08.2010 um 11:08 Uhr, 4975 Aufrufe, 3 Kommentare

Hallo!

Da man bei Excel (aus gutem Grund) die Makro-Aktivierung ja nicht automatisieren kann, habe ich mir gedacht, dass ich einfach Tabellenblatt (Sheet1) mit einer "Fehlermeldung" anzeigen lassen (die gleich erklärt, wie man die Makros aktiviert), das jedoch ausgeblendet wird, wenn Makros aktiviert werden.

Also:
Sheet1: Tabellenblatt, mit Fehlermeldung, ist standartmäßig <b>Visible=True
Sheet2: Tabellenblatt, das angezeigt werden soll, wenn Makros aktiv (da nur dann diese Seite richtig funktioniert), ist standartmäßig <b>Visible=False

Dazu habe ich diesen Code unter "DieseArbeitsmappe" eingefügt:

01.
Private Sub Workbook_Open() 
02.
 
03.
   Worksheets("Sheet1").Visible = True 
04.
   Worksheets("Sheet2").Visible = True 
05.
   Worksheets("Sheet1").Visible = False 
06.
   ... 
07.
   ...
Wenn ich die Sicherheitsstufe auf "hoch" habe, funktioniert es ganz gut.
Wird die Sicherheitsstufe auf "mittel" gesetzt, funktioniert es beim ersten mal super (also, wenn ich beim 1. mal auf "Makros deaktivieren" klicke).
Sobald jedoch einmal "Makros aktivieren" geklickt wurde, kommt immer sofort das Sheet2, obwohl ich "Makros deaktivieren" gewählt habe

wo liegt den da mein (denk)fehler??

Lg Mike
Mitglied: 76109
31.08.2010 um 11:27 Uhr
Hallo Mike!

Dein Denkfehler besteht darin, dass das Workbook_Open bei "Makros deaktivieren " ja nicht ausgeführt wird.

Wobei ich den Sinn der Codezeile 3 und 5 überhaupt nicht verstehe. Entweder True oder False, aber doch nicht beides?

Du musst zusätzlich die Funktion Workbook_BeforeClose(Cancel As Boolean) verwenden, in der definiert wird, was sein soll, wenn "Markros deaktiveren" gewählt wird und in Workbook_Open, dass definieren, was sein soll, wenn "Makros aktivieren" gewählt wird

Gruß Dieter
Bitte warten ..
Mitglied: xaumichi
31.08.2010 um 11:46 Uhr
Jup, hab meinen Fehler schon gefunden.

Hab im Workbook_beforeClose zuerst gespeichert und dann die Visible-Eigenschaften der beiden Blätter wieder rückgesetzt.
Obwohl ich ja zuerst rücksetzten muss und dann speichern!
Und die erste Zeile ist natürlich sinnlos...ich weiß...! :?

Trotzdem danke schön!

Lg Mike
Bitte warten ..
Mitglied: 76109
01.09.2010 um 08:51 Uhr
Hallo Mike!

Mir ist noch eingefallen, dass es eventuell besser wäre, die entsprechenden Einstellungen im Workbook_BeforeSave(..)-Ereignis vorzunehmen.

Wenn das Workbbok nicht gespeichert wird, dann gelten ja beim nächsten Öffnen die gleichen Bedingungen, wie beim letzten Öffnen. Ändert sich also nix.

Die Einstellungen im Workbook_BeforeClose(..)-Ereignis zu speichern, könnte bei einigen Anwendern eine leichte Krise auslösen. Nähmlich dann, wenn er die Arbeitsmappe - aus welchen Gründen auch immer - garnicht speichern will und beim erneuten Öffnen der Arbeitsmappe dann einen leichten bis mittelschwerden Schock erleidet, weil sie zu seiner Überraschung zwangsgespeichert wird.

Gruß Dieter
Bitte warten ..
Ähnliche Inhalte
Windows Server
Site-GPO auf OU anwenden, bei der die Vererbung deaktiviert ist?! (2)

Frage von mexx991 zum Thema Windows Server ...

Microsoft Office
Office 2010 - Makros in Word "verschwinden" (7)

Frage von Fastinator zum Thema Microsoft Office ...

VB for Applications
gelöst Daten eines einzelnen Tabellenblatt als Mail versenden (kein Dateianhang) (9)

Frage von Zentralenteufel zum Thema VB for Applications ...

Neue Wissensbeiträge
Heiß diskutierte Inhalte
Server-Hardware
Einem Stromausfall entgegen wirken (22)

Frage von OIOOIOOIOIIOOOIIOIIOIOOO zum Thema Server-Hardware ...

Festplatten, SSD, Raid
PC stellt nach dem Bios ab (20)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...

Windows 7
Freeware MSI Tool (13)

Frage von uridium69 zum Thema Windows 7 ...

DSL, VDSL
gelöst Ständige Störungen - Internet (12)

Frage von gamerff zum Thema DSL, VDSL ...