Herbers Excel-Forum - das Archiv
Userform Multipage
Informationen und Beispiele zu den hier genannten Dialog-Elementen:

|
Betrifft: Userform Multipage
von: Golem
Geschrieben am: 21.09.2003 10:39:59
Seid mir gegrüßt,
Wer verrät mir wie man bei EINEM Userform (mit Multipage) von verschiedenen Tabellen und verschiedenen Buttons (hinter denen ein Makro dieses User form öffnet) aus, die Multipage so ansteuert, dass Sie immer eine bestimmte Page öffnet, z.B.:
Man hat 2Buttons auf einer Seite, die bei "click" das Userform öffnen, aber nun soll der eine Button nur die Page1 des Userf öffnen u. Button2 beim draufclicken das Userform aufrufen allerdings auf Page2, es existiert aber noch ein selbsterstellter "Abbrechen" auf dem Userform, so daß man theoret. 2Möglichkeiten hat das Userform zu schliessen: über den Button "Abbrechen" oder mit "X" ?
ich hoffe das klingt verständlich?
Ave&Viele Grüsse
Mile
Betrifft: AW: Userform Multipage
von: Ramses
Geschrieben am: 21.09.2003 11:04:54
Hallo
damit kannst du deine Userform ohne das "Schliessen-Kreuz" aufrufen
Option Explicit
Private Declare Function FindWindow Lib "user32" Alias _
"FindWindowA" (ByVal lpClassName As String, ByVal _
lpWindowName As String) As Long
Private Declare Function GetWindowLong Lib "user32" Alias _
"GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex _
As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias _
"SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex _
As Long, ByVal dwNewLong As Long) As Long
Private Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As Long
Private Const GWL_STYLE As Long = -16
Private Const WS_SYSMENU As Long = &H80000
Private hWndForm As Long
Private myCloseBtn As Boolean
Private Sub UserForm_Initialize()
Dim frmStyle As Long
'Application testen 9 = 2000, >9 = XP oder höher
If Val(Application.Version) >= 9 Then
hWndForm = FindWindow("ThunderDFrame", Me.Caption)
Else
hWndForm = FindWindow("ThunderXFrame", Me.Caption)
End If
If hWndForm = 0 Then
MsgBox "Excel Version ungenügend. Kann nicht durchgeführt werden"
'Unload Me
Exit Sub
End If
frmStyle = GetWindowLong(hWndForm, GWL_STYLE)
frmStyle = frmStyle And Not WS_SYSMENU
SetWindowLong hWndForm, GWL_STYLE, frmStyle
DrawMenuBar hWndForm
End Sub
Code eingefügt mit Syntaxhighlighter 1.16
und damit rufst du deine Userform mit der richtigen Page auf
Option Explicit
Private Sub CommandButton1_Click()
Load UserForm1
UserForm1.MultiPage1.Value = 1
UserForm1.Show
End Sub
Code eingefügt mit Syntaxhighlighter 1.16
Achtung:
Die Zählung der Seiten beginnt bei 0
Gruss Rainer
Betrifft: AW: Userform Multipage
von: Mile
Geschrieben am: 21.09.2003 11:30:33
Hi Ramses,
1000 Dank für Code & Antwort!!
Betrifft: Merci für's Feedback o.T.
von: Ramses
Geschrieben am: 21.09.2003 11:33:37
...
Betrifft: Golem=Mile...
von: Golem
Geschrieben am: 21.09.2003 11:35:15
Betrifft: Gewöhnt Euch doch an...
von: Ramses
Geschrieben am: 21.09.2003 11:38:09
Hallo
... mit dem normalen Vornamen zu antworten.
Dann habt ihr auch kein Durcheinander :-)
Ausser ihr hättet was zu verbergen ;-)
Gruss Rainer
Betrifft: AW: Gewöhnt Euch doch an...
von: ich
Geschrieben am: 21.09.2003 11:48:02
Bie sovielen blöden Fragen die ich stelle ist es einfach zu peinlich immer meinen eigenen Namen zu sehen...
Gruß Mile
Betrifft: Es gibt keine blöden Fragen....
von: Ramses
Geschrieben am: 21.09.2003 12:35:44
Hallo wie auch immer
.... höchstens blöde Antworten
Gruss Rainer