Anzeige
Archiv - Navigation
608to612
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
608to612
608to612
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Makroaufruf in WB-Open geht nicht , direkt gehts?

Makroaufruf in WB-Open geht nicht , direkt gehts?
11.05.2005 14:55:18
Reinhard
Hallo Wissende,
1)mit nachfolgenden Codes wird der Mauszeiger ein- und ausgeblendet. Bei Direktaufruf des Makros per Button oder F5 in der IDE funktioniert es, aber der Call in Wotkbook_B-Open funktioniert nicht.
Was tun?
2) Nur innerhalb des eigentlichen Tabellenbereiches soll der Mauszeiger unsichtbar sein, oben die Symbolleisten sollt er sichtbar sein, ich müsste also anhand der Mausposition entweder aus oder ein aufrufen. Hat da jemand eine API zur Hand?
Oder haben alle Symboleisten eine Mouseover eigenschaft die man asuwerten könnte, wie geht denn dann das unten für die Taskleisten, Tabellenreiter?
Danke
Gruß
Reinhard
Diese Arbeitsmappe

Private Sub Workbook_Activate()
Call aus
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call ein
End Sub
Private Sub Workbook_Deactivate()
Call ein
End Sub
Private Sub Workbook_Open()
Call aus
End Sub

Modul1

Private Declare Function ShowCursor Lib "user32" (ByVal bShow As Long) As Long
Sub aus()
ShowCursor 0
End Sub
Sub ein()
ShowCursor 1
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makroaufruf in WB-Open geht nicht , direkt geh
13.05.2005 07:40:15
Erich
Hallo Reinhard,
zu 1) habe ich wohl herausgefunden, warum die Umschaltung des Mauszeigers bei den Ereignissen nicht zum gewünschten Ergebnis führte. ShowCursor ändert einen Zähler: Bei jeder Aktivierung wird um 1 erhöht, bei jeder Deaktivierung um 1 vermindert. Solange der Zähler nicht negativ ist, ist der Mauszeiger sichtbar.
Mit dem folgenden Code kannst du sehen, wie die Ereignisse abgearbeitet werden und wie sich der Zähler dabei entwickelt. (Den Zähler kannst du ja auch durch z. B. Starten der Activate- oder Deactivate-Makros per Hand beeinflussen.)
in "Diese Arbeitsmappe":

Dim ii%
Private Sub Workbook_Open()
For ii = 1 To 5
MsgBox "WB_Open Nr " & ii
If um(0) < 0 Then Exit For
Next ii
End Sub
Private Sub Workbook_Activate()
For ii = 1 To 5
MsgBox "WB_Act Nr " & ii
If um(0) < 0 Then Exit For
Next ii
End Sub
Private Sub Workbook_Deactivate()
For ii = 1 To 5
MsgBox "WB_Deact Nr " & ii
If um(1) >= 0 Then Exit For
Next ii
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
For ii = 1 To 5
MsgBox "WB_BefClose Nr " & ii
If um(1) >= 0 Then Exit For
Next ii
End Sub

in Modul1:

Private Declare Function ShowCursor Lib "user32" (ByVal bShow As Long) As Long
Function um(EinAus As Long) As Long
Dim zwi&
zwi = ShowCursor(EinAus)
MsgBox "ShowCurser = " & zwi
um = zwi
End Function
' nur zum leichteren Per-Hand-Einschalten beim Test
Sub MausEin()
Dim ii%
For ii = 1 To 5
MsgBox "MausEin Nr " & ii
If um(1) >= 0 Then Exit For
Next ii
End Sub

Grüße aus Kamp-Lintfort
Erich
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige