Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

prüfen vor Mail senden ob Outlook geöffnet

Forumthread: prüfen vor Mail senden ob Outlook geöffnet

prüfen vor Mail senden ob Outlook geöffnet
16.02.2005 11:02:46
Tom
Hallo Leute
ich habe hier im Forum ein Code gefunden mit dem ich nach ein paar Änderungen
schon viel anfangen kann. Bei einer brauche ich mal eure Hilfe.
Wie kann ich prüfen vor dem senden ob Outlook geöffnet ist?
Wenn nicht geöffnet, dann soll eine Meldung erscheinen das Outlook geöffnet
werden soll und dann mit OK soll das versenden fortgesetzt werden.
Einige User haben Outlook beim versuch zu senden nicht geöffnet und bekommen
dann immer Fehlermeldung.
Danke für eure Hilfe
Mfg Tom

Sub SendMessage()
Dim oOL As Object
Dim oOLMsg As Object
Dim oOLRecip As Object
Dim oOLAttach As Object
Dim iRow As Integer
Set oOL = CreateObject("Outlook.Application")
Set oOLMsg = oOL.CreateItem(0)
With oOLMsg
Set oOLRecip = .Recipients.Add(Range("E1").Value)
iRow = 2
Do Until IsEmpty(Cells(iRow, 1))
Set oOLAttach = .Attachments.Add(Cells(iRow, 1).Value)
iRow = iRow + 1
Loop
.Subject = Format(Date, "dd.mm.yy") & " - " & Format(Time, "hh:mm:ss")
.Body = "Beiliegend die Excel-Dateien"
.Send
End With
Set oOLRecip = Nothing
Set oOLMsg = Nothing
Set oOL = Nothing
End Sub

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: prüfen vor Mail senden ob Outlook geöffnet
Marcl
Hallo Tom,
veruch mal das:
Private Declare

Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal szClass$, ByVal szTitle$) As Long
Public ausstieg As String

Sub Outlook_offen()
Dim outlookpruef, ergebnis
ausstieg = ""
On Error GoTo outlookfehler
' Prüfen ob Outlook gestartet ist
hFenster = FindWindow(vbNullString, "Microsoft Outlook")
If hFenster = 0 Then GoTo outlookfehler
If hFenster <> 0 Then Exit Sub
' Outlokk läuft nicht, dann Frage ob Outlook gestartet werden soll
outlookfehler:
outlookpruef = MsgBox("Microsoft Outlook wurde noch nicht gestartet !!!!!" & (Chr(10) & Chr(10)) & "Bitte starten Sie Outlook und versuchen es dann noch einmal.", vbOKOnly)
ausstieg = "ja"
Exit Sub
End Sub

Gruß
Marcl
Anzeige
AW: prüfen vor Mail senden ob Outlook geöffnet
16.02.2005 12:34:50
Tom
Hallo Marcl,
danke für die Hilfe, das ist genau das was ich brauche.
Mfg Tom
;
Anzeige
Anzeige

Infobox / Tutorial

Outlook vor dem E-Mail-Versand prüfen


Schritt-für-Schritt-Anleitung

Um vor dem Senden einer E-Mail in Excel zu überprüfen, ob Microsoft Outlook geöffnet ist, kannst du folgenden VBA-Code verwenden. Dieser Code prüft, ob Outlook läuft und gibt eine Warnmeldung aus, falls nicht.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.
  2. Erstelle ein neues Modul:
    • Klicke im Menü auf Einfügen > Modul.
  3. Füge den folgenden Code ein:
Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal szClass$, ByVal szTitle$) As Long

Public ausstieg As String

Sub Outlook_offen()
    Dim outlookpruef, ergebnis
    ausstieg = ""
    On Error GoTo outlookfehler
    ' Prüfen ob Outlook gestartet ist
    hFenster = FindWindow(vbNullString, "Microsoft Outlook")
    If hFenster = 0 Then GoTo outlookfehler
    If hFenster <> 0 Then Exit Sub
    ' Outlook läuft nicht, dann Frage ob Outlook gestartet werden soll
outlookfehler:
    outlookpruef = MsgBox("Microsoft Outlook wurde noch nicht gestartet !!!!!" & _
        (Chr(10) & Chr(10)) & "Bitte starten Sie Outlook und versuchen es dann noch einmal.", vbOKOnly)
    ausstieg = "ja"
    Exit Sub
End Sub
  1. Speichere deine Arbeit und führe das Makro aus, bevor du eine E-Mail versendest.

Häufige Fehler und Lösungen

Fehler 1: microsoft outlook kann nicht gestartet werden. das outlook-fenster kann nicht geöffnet werden.

  • Lösung: Überprüfe, ob Outlook korrekt installiert ist und keine Updates benötigt. Stelle sicher, dass du die richtige Version von Outlook verwendest.

Fehler 2: Fehlermeldung beim Senden der E-Mail.

  • Lösung: Versichere dich, dass Outlook geöffnet ist, bevor du das Makro ausführst. Nutze den bereitgestellten Code, um dies zu überprüfen.

Alternative Methoden

Wenn du eine einfachere Lösung bevorzugst, kannst du auch die Excel-Funktion Application.GetObject verwenden, um zu prüfen, ob Outlook läuft:

Sub CheckOutlook()
    On Error Resume Next
    Dim olApp As Object
    Set olApp = GetObject(, "Outlook.Application")
    If olApp Is Nothing Then
        MsgBox "Outlook ist nicht geöffnet. Bitte starte Outlook."
    End If
    On Error GoTo 0
End Sub

Praktische Beispiele

Hier sind einige Praxisbeispiele, wie du den Code verwenden kannst:

  1. E-Mail-Versand mit Anhang: Du kannst den oben angepassten Code in eine bestehende E-Mail-Versandroutine integrieren, um sicherzustellen, dass Outlook geöffnet ist, bevor die E-Mail versendet wird.

  2. Integration mit OneNote: Falls du auch den Onenote Druckbereich festlegen möchtest, kannst du den Outlook-Status prüfen, bevor du Inhalte von Excel nach OneNote exportierst.


Tipps für Profis

  • Nutze die Möglichkeit, das Makro als Schaltfläche auf deinem Excel-Arbeitsblatt zu platzieren, um den Zugriff zu erleichtern.
  • Experimentiere mit weiteren VBA-Funktionen, um die Automatisierung deiner E-Mail-Prozesse zu erweitern.
  • Halte die VBA-Referenzdokumentation bereit, um schnell Lösungen für spezifische Probleme zu finden.

FAQ: Häufige Fragen

1. Wie kann ich überprüfen, ob Outlook geöffnet ist, ohne VBA zu verwenden?
Leider gibt es in Excel keine integrierte Funktion, um den Status von Outlook ohne VBA zu überprüfen. VBA ist der effektivste Weg.

2. Was kann ich tun, wenn ich die Fehlermeldung "microsoft outlook kann nicht gestartet werden" erhalte?
Überprüfe die Installation von Outlook, und stelle sicher, dass alle Updates installiert sind. Manchmal kann ein Neustart des Computers helfen.

3. Ist dieser Code mit allen Versionen von Outlook kompatibel?
Ja, der Code sollte mit den meisten gängigen Versionen von Microsoft Outlook kompatibel sein. Achte darauf, dass die Version, die du verwendest, aktuell ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige