Userform fix über API in EXCEL97 ???+ diverses
24.11.2003 09:53:51
Zdena
ich habe in EXCEL 97 das Problem, dass eine Userform immer im Vordergrund bleiben soll und trotzdem auch die Tabelle im Hintergrund unabhängig davon aktiviert werden kann (editierbar). Bei Excel 2000 ist das wohl mit der Einstellung einer Eigenschaft der Userform möglich. Nicht jedoch bei EXCEL97!
In diesem Forum habe ich dann vor einiger Zeit den Tipp bekommen über API-Funktion das einzustellen:
'Declaration of the API function.
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function EnableWindow Lib "user32" _
(ByVal hwnd As Long, ByVal bEnable As Long) As Long
'Code executed when the UserForm is opened.
'Indicates that the main window is activated.
Dim hwndXL&
hwndXL = FindWindow("XLMAIN", Application.Caption)
If hwndXL <> 0 Then
EnableWindow hwndXL, 1
End If
Das klappt prima!! Brauche aber noch eine Anpassung:
1 Wie kann ich die Userform fixieren, d.h. der User kann sie auf dem
Bildschirm nicht mehr verschieben!
2 Wenn ich die Menübar von Excel benutzen will geht das nur, wenn ich einen
Doppelklick mache. Dann meldet sich der Office-Assisten und das Anpassen-
Dialog - Fenster. Wenn ich das wegklicke kann ich plötzlich wieder auf die
Menübar zugreifen! Wie kann ich das abstellen? Ich möchte jederzeit ganz
normal die Menübar ansprechen auch wenn diese Userform im Vordergrund
aktiviert ist.
3 Wenn ich die Exceldatei auf einem Laptop laufen lasse sollte die fixe
Userform autom. horizontale Scrollbars bekommen--> Wegen der geringeren
Auflösung passt nicht mehr alles auf den Bilschirm. Die Userform ist im
Prinzip funktional eine spezielle Kommandozentrale für die Tabelle.
Im "Laptopmodus" möchte ich über die horizontale Scrollbar Zugriff haben
auf alle enthaltenen Buttons.
Habt Ihr Ideen und könnt mir helfen? Ist jetzt ziemlich viel, was ich in einem Beitrag frage - ich weiß. Nehmt´s mir nicht übel :-) Würde mich wirklich freuen hier weiterzukommen. Im voraus besten Dank.
Schönen Gruß
Zdena:-)