Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1176to1180
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
Inhaltsverzeichnis

Prüfen, bis...

Prüfen, bis...
Gegga
Hallo da draussen
benutze folgenden Code:
Option Explicit
Sub Call_InstanceCheck()
'MsgBox InstanceCheck("outlook")
If InstanceCheck("Outlook") = False Then
UF_HINWEIS.Show
Else
If InstanceCheck("Outlook") = True Then
UF_NEUE_BESTELLUNG_EINTRAGEN.Show
End If
End If
End Sub

Function InstanceCheck(Server As String) As Boolean
Dim myInstance As Object
InstanceCheck = False
On Error Resume Next
Select Case UCase(Server)
Case "EXCEL"
Set myInstance = GetObject(, "excel.application")
Case "OUTLOOK"
Set myInstance = GetObject(, "outlook.application")
Case "WORD"
Set myInstance = GetObject(, "word.application")
End Select
If Not myInstance Is Nothing Then InstanceCheck = True
On Error GoTo 0
Set myInstance = Nothing
End Function

Bei UF_HINWEIS ist ein CommandButton der inaktiv ist und aktiv werden soll, sobald Outlook geöffnet worden ist.
Wie kann ich oben genannten Code ind eine "Schleife" legen (evtl. Sekundentakt?) wo überprüft wird ob Outlook nun geöffnet ist und der ComButton aktiv (enabled) wird?
Gruss Gegga

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Prüfen, bis...
15.09.2010 13:15:07
JogyB
Hallo Gegga,
das hier in das UserForm:
Private Sub UserForm_Activate()
Call checkOutlookinForm
End Sub
Und das hier in ein allgemeines Modul:
Sub checkOutlookinForm()
If Not IsFormLoaded("UF_HINWEIS") Then Exit Sub
If InstanceCheck("OUTLOOK") Then
UF_HINWEIS.CommandButton1.Enabled = True
Else
Application.OnTime Now + TimeSerial(0, 0, 1), "checkOutlookinForm"
End If
End Sub

Achtung: Das Formular kann noch geschlossen werden, das musst Du ggf. abfangen.
Gruß, Jogy
AW: Prüfen, bis... DANKE!!!!! OwT
15.09.2010 13:50:22
Gegga
da fehlt noch was...
15.09.2010 16:47:20
JogyB
Hallo Gegga,
das habe ich vergessen:
Function IsFormLoaded(ByVal fName As String) As Boolean
'Prüfen, ob Formular geladen
Dim i As Integer
IsFormLoaded = False
For i = 0 To UserForms.COUNT - 1
If LCase$(UserForms(i).Name) = LCase$(fName) Then
IsFormLoaded = True
Exit For
End If
Next i
End Function

Gruß, Jogy
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige