Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
384to388
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
384to388
384to388
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Startfenster

Startfenster
18.02.2004 20:51:42
Simon
Hallo VBA Freaks,
habe ein Program in Exel gemacht, jetzt möchte
ich wenn mein Program Gestartet wird das ein Bild erscheint, und nach
wenigen sek. wieder Verschwindet.
Hab schon mit einem UserForm ein Bild eingefügt, benögtige nur den Codedamit das UserForm Automatisch gestartet wird und auch wieder beendet!
Bedanke mich schon im Vorraus
Mfg Simon

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Startfenster
18.02.2004 20:58:10
Matthias G
Hallo Simon,
zu allererst musst Du die Eigenschaft "ShowModal" des Userforms auf "False" setzen.
Dann folgenden Code in "DieseArbeitsmappe":

Private Sub Workbook_Open()
UserForm1.Show
Application.Wait (Now + TimeValue("00:00:03"))
UserForm1.Hide
End Sub

Gruß,
Matthias
AW: Startfenster
18.02.2004 21:11:58
Simon
Hallo Matthias
Danke für die Schnelle Antwort, funktioniert einwandfrei!
Gibt es jetzt noch einen Befehl der das USerForm Automatisch Starten lässt,
also sobald das Program Gestartet wird
Mfg Simon
AW: Startfenster
18.02.2004 21:44:59
Matthias G
Hallo Simon,
das ist ja eben die Prozedur Workbook_Open.
Du musst die allerdings in das Codemodul "DiesArbeitsmappe" stellen, also nicht in ein "normales" Modul wie Modul1.
Im Projekt-Explorer des VBA-Fensters siehst Du einen Verzeichnisbaum, hier steht auch "DieseArbeitsmappe". Darauf doppelklicken und du bist im richtigen Modul.
Viel Erfolg,
Matthias
Anzeige
Super
19.02.2004 07:19:30
Simon
danke, hat super geklappt
mfg Simon
AW: Danke für die Rückmeldung - o.T.
19.02.2004 08:43:44
Matthias G
:-)
AW: noch weiter....
19.02.2004 08:44:56
Michael S.
Hallo!
Das habe ich auch schon mal gebraucht..... nun meine Frage: Kann man die UserForm auch ohne den oberen blauen Programmbalken anzeigen lassen? Sodass man wirklich ausschließlich das Bild sieht? Z.B. Wenn Excel startet?
Gruß,
Michael S.
AW: noch weiter....
19.02.2004 08:56:42
Matthias G
Hallo Simon,
Ohne Titel geht auch.
Ich hab den folgenden Code hier aus dem Forum. Er muss ins Codemodul des Userforms. Also Rechtsklick auf das UF im Projekt-Explorer, dann Code anzeigen.
Die Bezeichnung "UserForm1" im Code muss angepasst werden, wenn das UF einen anderen Namen hat! (Kommt 4 mal vor incl. Kommentar)
Hier der Code:
-----------------------------------------
Option Explicit
' Userform mit einem CommandButton (CoEnde), um die Userform
' zu schließen. Mit rechtsklick auf die Maus in der Userform
' wird diese ebenfalls geschlossen. Abschnitt:
' "Unload UserForm1 ' Zum schließen, beim ausprobieren."
' von GraFri
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindow Lib "user32" (ByVal hwnd As Long, _
ByVal wCmd As Long) As Long
Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As _
Long, lpRect As RECT) As Long
Private Declare Function ReleaseCapture Lib "user32" () As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
(ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function CreateRectRgn Lib "gdi32" (ByVal X1 As Long, _
ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long) As Long
Private Declare Function SetWindowRgn Lib "user32" (ByVal hwnd As Long, _
ByVal hRgn As Long, ByVal bRedraw As Boolean) As Long
Private FensterRegion&, Region&
Private Hauptfensternummer&, Clientfensternummer&
Private dummy As Long
Private Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type
Private Const GW_CHILD = 5
Private Const WM_NCLBUTTONDOWN = &HA1
Private Const HTCAPTION = 2

Private Sub UserForm_Initialize()
Call FensterOhneKopf
End Sub

Sub FensterOhneKopf()
Dim Abmessung As RECT
Dim Abmessung1 As RECT
Dim Pos1x&, Pos1y&, Pos2x&, Pos2y&
If FensterRegion <> 0 Then Exit Sub
UserForm1.BorderStyle = fmBorderStyleSingle
Call Fensternummer(UserForm1, Abmessung, Abmessung1)
Pos1x = 0
Pos1y = (Abmessung1.Top - Abmessung.Top)
Pos2x = Abmessung.Right - Abmessung.Left
Pos2y = Abmessung.Bottom - Abmessung.Top
Region = CreateRectRgn(Pos1x, Pos1y, Pos2x, Pos2y)
FensterRegion = SetWindowRgn(Hauptfensternummer, Region, True)
End Sub

'Fensterhandles und Infos über Fenster holen

Private Sub Fensternummer(Form As Object, Abmessung As RECT, Abmessung1 As RECT)
Dim Fenstername$, Suchstring$
Suchstring = "UserForm ohne Titelzeile"
Fenstername = Form.Caption
Form.Caption = Suchstring
Hauptfensternummer = FindWindow(vbNullString, Suchstring)
Form.Caption = Fenstername
Clientfensternummer = GetWindow(Hauptfensternummer, GW_CHILD)
dummy = GetWindowRect(Hauptfensternummer, Abmessung)
dummy = GetWindowRect(Clientfensternummer, Abmessung1)
End Sub

'Folgendes ist notwendig, um die Form ohne Titelleiste zu verschieben
'

Private Sub UserForm_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, _
'ByVal X As Single, ByVal Y As Single)
'    If Button = 1 Then
'        If Hauptfensternummer <> 0 Then
'            dummy = ReleaseCapture()
'            dummy = SendMessage(Hauptfensternummer, WM_NCLBUTTONDOWN, HTCAPTION, 0)
'        End If
'    Else
'        Unload UserForm1 ' Zum schließen, beim ausprobieren.
'    End If
'End Sub


Private Sub CoEnde_Click()
Unload Me
End Sub

----------------------------------------------------
Gruß Matthias
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige