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

Forumthread: Outlook minimiert starten

Outlook minimiert starten
Chris
Hallo Forum,
folgendes Makro öffnet mir Outlook aus Excel heraus.
Weiss jmd. wie man Outlook per VBA minimiert öffnet? vbminimzed funktioniert leider nicht, es wird einfach in einem kleineren Fenster geöffnet.
Bei der Gelegenheit: Gibt es eine Möglichkeit Outlook immer dann zu beenden, wenn Excel beendet wird? (Bei Klick auf des Kreuz oben rechts).
Danke. Chris
Sub outapp()
Status = Shell("outlook.exe", 1)
End Sub

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Outlook minimiert starten
23.07.2011 18:46:23
Tino
Hallo,
versuche es mal so.
Private Declare Function OpenProcess Lib "kernel32.dll" ( _
    ByVal dwDesiredAccess As Long, _
    ByVal bInheritHandle As Long, _
    ByVal dwProcessId As Long) As Long
Private Declare Function TerminateProcess Lib "kernel32.dll" ( _
    ByVal hProcess As Long, _
    ByVal uExitCode As Long) As Long

Private Const PROCESS_TERMINATE = &H1
Private Const PROCESS_VM_READ = &H10

Private lvntTaskId As Variant

Public Sub Open_Outlook()
Dim strPath$
strPath = Application.Parent.Path
If Right$(strPath, 1) <> "\" Then strPath = strPath & "\"
lvntTaskId = Shell(strPath & "OUTLOOK.EXE", vbMinimizedFocus)
End Sub

Public Sub Close_Outlook()
    Dim lngHandle As Long
    If lvntTaskId <> 0 Then
        lngHandle = OpenProcess(PROCESS_VM_READ Or PROCESS_TERMINATE, 0&, lvntTaskId)
        If lngHandle <> 0 Then Call TerminateProcess(lngHandle, 0&)
    End If
End Sub
Gruß Tino
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Outlook minimiert starten


Schritt-für-Schritt-Anleitung

Um Outlook minimiert zu starten, kannst du ein VBA-Makro in Excel verwenden. Folge diesen Schritten:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.
  3. Füge den folgenden Code in das Modul ein:

    Private Declare Function OpenProcess Lib "kernel32.dll" ( _
       ByVal dwDesiredAccess As Long, _
       ByVal bInheritHandle As Long, _
       ByVal dwProcessId As Long) As Long
    Private Declare Function TerminateProcess Lib "kernel32.dll" ( _
       ByVal hProcess As Long, _
       ByVal uExitCode As Long) As Long
    
    Private Const PROCESS_TERMINATE = &H1
    Private Const PROCESS_VM_READ = &H10
    
    Private lvntTaskId As Variant
    
    Public Sub Open_Outlook()
       Dim strPath$
       strPath = Application.Parent.Path
       If Right$(strPath, 1) <> "\" Then strPath = strPath & "\"
       lvntTaskId = Shell(strPath & "OUTLOOK.EXE", vbMinimizedFocus)
    End Sub
    
    Public Sub Close_Outlook()
       Dim lngHandle As Long
       If lvntTaskId <> 0 Then
           lngHandle = OpenProcess(PROCESS_VM_READ Or PROCESS_TERMINATE, 0&, lvntTaskId)
           If lngHandle <> 0 Then Call TerminateProcess(lngHandle, 0&)
       End If
    End Sub
  4. Speichere das Modul und schließe den VBA-Editor.
  5. Führe das Makro Open_Outlook aus, um Outlook minimiert zu starten.

Häufige Fehler und Lösungen

  • Excel öffnet immer minimiert: Wenn Excel selbst minimiert startet, überprüfe die Einstellungen in Excel oder starte es im abgesicherten Modus.

  • Outlook öffnet sich minimiert: Stelle sicher, dass du die Option vbMinimizedFocus korrekt im Shell-Befehl verwendest.

  • Outlook beim Schließen minimieren: Um Outlook beim Schließen zu minimieren, kannst du ein weiteres Makro erstellen, das die Close_Outlook-Subroutine aufruft.


Alternative Methoden

Wenn du Outlook minimiert starten möchtest, gibt es auch alternative Methoden:

  • Verknüpfung anpassen: Du kannst eine Verknüpfung von Outlook auf deinem Desktop erstellen und in den Eigenschaften der Verknüpfung die Option "Minimiert" auswählen.
  • Task Scheduler: Nutze den Windows Task Scheduler, um Outlook beim Systemstart minimiert zu starten.

Praktische Beispiele

Hier sind einige Beispiele, wie du die oben genannten Methoden anwenden kannst:

  1. Makro zur automatischen Ausführung: Du kannst das Makro so anpassen, dass es automatisch beim Öffnen von Excel ausgeführt wird, indem du es in das Workbook_Open-Ereignis einfügst.

    Private Sub Workbook_Open()
       Open_Outlook
    End Sub
  2. Outlook im Hintergrund starten: Wenn du Outlook im Hintergrund starten möchtest, kannst du das folgende Makro verwenden:

    Sub StartOutlookInBackground()
       Shell "outlook.exe", vbHide
    End Sub

Tipps für Profis

  • Automatisierung: Du kannst das Makro anpassen, um es beim Starten eines bestimmten Excel-Dokuments automatisch auszuführen.
  • Fehlerbehandlung: Integriere Fehlerbehandlungsroutinen in deine Makros, um Probleme beim Öffnen von Outlook zu vermeiden.
  • Performance: Stelle sicher, dass dein Code so effizient wie möglich ist, um die Ladezeiten zu minimieren.

FAQ: Häufige Fragen

1. Wie verhindere ich, dass Excel sich minimiert, wenn ich Outlook öffne?
Überprüfe die Einstellungen in Excel und stelle sicher, dass keine Makros oder Add-Ins installiert sind, die dies verursachen könnten.

2. Kann ich Outlook immer minimiert starten?
Ja, du kannst das oben beschriebene Makro verwenden, um Outlook jedes Mal minimiert zu starten, wenn du Excel öffnest oder ein bestimmtes Dokument lädst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige