Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Outlooktermin via Excel/Vba senden

Outlooktermin via Excel/Vba senden
24.05.2016 17:43:57
Peter
Hallo,
ich versuche immernoch über Excel einen Termin in outlook an mehrere Leute zu versenden. Ese klappt in der Zwischenzeit auch alles bis auf einen kleinen Schönheitsfehler:
Set OutApptmt = OutApp.CreateItem(1)
With OutApptmt
.Subject = var_Firma & " Techniker im Haus"
.Start = var_Startdatum & " " & var_StartZeit
.End = var_Enddatum
Set OutMail = .ForwardAsVcal
End With
On Error Resume Next
With OutMail
.GetInspector.display
Oldbody = .Body
um kurz einen Codeausschnitt zu posten. hier möchte ich gerne, dass der Starrtzeitpunkt die var_startdatum (zelle) enth#lt UND eigentlich, dass es immer um 08:00 los geht.
Leider bleibt bei mir alle sleer. Egal ob ich es über
.Start = var_Startdatum & " " & var_StartZeit
.Start = var_Startdatum & "08:00"
oder ähnliches probiere.
Der Versendete Termin ist zwar vom Start und Enddatum richtig nur ich bkomme es weder bei Ende noch bei Start hin eine Uhrzeit ein zu fügen und bin etjtz langsam am Verzweifeln.
hat mir jemand hier eine Hilfe?
Grüße

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Outlooktermin via Excel/Vba senden
24.05.2016 22:36:41
Luschi
Hallo Peter,
bei mir (Outlook 2016) klappt das:
Userbild
Gruß von Luschi
aus klein-Paris
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Outlooktermin via Excel und VBA versenden


Schritt-für-Schritt-Anleitung

Um einen Outlooktermin über Excel und VBA zu versenden, befolge diese Schritte:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Erstelle ein neues Modul:

    • Klicke mit der rechten Maustaste auf "VBAProject (DeineDatei.xlsx)" und wähle "Einfügen" > "Modul".
  3. Füge den folgenden Code ein:

    Sub OutlookTerminSenden()
       Dim OutApp As Object
       Dim OutApptmt As Object
       Dim OutMail As Object
       Dim var_Firma As String
       Dim var_Startdatum As String
       Dim var_StartZeit As String
       Dim var_Enddatum As String
    
       ' Beispielwerte setzen
       var_Firma = "Mein Unternehmen"
       var_Startdatum = "2023-10-20"
       var_StartZeit = "08:00"
       var_Enddatum = "2023-10-20 09:00"
    
       Set OutApp = CreateObject("Outlook.Application")
       Set OutApptmt = OutApp.CreateItem(1) ' 1 steht für einen Kalendereintrag
    
       With OutApptmt
           .Subject = var_Firma & " Techniker im Haus"
           .Start = var_Startdatum & " " & var_StartZeit
           .End = var_Enddatum
           Set OutMail = .ForwardAsVcal
           .GetInspector.Display
       End With
    
       On Error Resume Next
       With OutMail
           OldBody = .Body
           ' Hier kannst du den Body anpassen
       End With
    End Sub
  4. Passe die Variablen (var_Firma, var_Startdatum, var_StartZeit, var_Enddatum) an deine Bedürfnisse an.

  5. Führe den Code aus, um den Termin zu erstellen und zu versenden.


Häufige Fehler und Lösungen

  • Uhrzeit wird nicht gesetzt: Stelle sicher, dass var_StartZeit im richtigen Format (HH:MM) angegeben ist. Probiere es auch mit einem festen Wert wie "08:00".

  • Fehlermeldungen bei der Ausführung: Überprüfe, ob Outlook korrekt installiert und konfiguriert ist. Stelle sicher, dass du die nötigen Berechtigungen hast, um Outlook über VBA zu steuern.

  • Termin wird nicht angezeigt: Achte darauf, dass OutMail = .ForwardAsVcal korrekt platziert ist, um den Termin als Anhang zu versenden.


Alternative Methoden

Falls du Outlook Kalendereinträge senden möchtest, ohne VBA zu verwenden, kannst du auch:

  • Manuell einen Kalendereintrag erstellen und diesen dann per E-Mail versenden.
  • Excel-Add-Ins verwenden, die speziell für die Integration mit Outlook entwickelt wurden.

Praktische Beispiele

Hier ist ein einfaches Beispiel, um einen Outlooktermin zu versenden:

Sub BeispielTermin()
    ' Beispiel für einen Outlooktermin mit festen Daten
    Dim OutApp As Object
    Dim OutApptmt As Object

    Set OutApp = CreateObject("Outlook.Application")
    Set OutApptmt = OutApp.CreateItem(1)

    With OutApptmt
        .Subject = "Teammeeting"
        .Start = "2023-10-25 10:00"
        .End = "2023-10-25 11:00"
        .Location = "Büro"
        .Body = "Bitte pünktlich erscheinen."
        .Recipients.Add "kollege@beispiel.com"
        .Send
    End With
End Sub

Tipps für Profis

  • Automatisierung: Du kannst mehrere Termine in einer Schleife erstellen, um Zeit zu sparen.
  • Erweiterte Funktionen: Nutze das Attachments-Objekt, um Dateien als Anhang zu deinem Outlook Termin hinzuzufügen.
  • Debugging: Verwende Debug.Print, um Variablenwerte während der Ausführung zu überprüfen.

FAQ: Häufige Fragen

1. Wie kann ich einen Outlooktermin als Anhang verschicken?
Du kannst den Termin mit der Methode .ForwardAsVcal als Anhang in einer E-Mail versenden.

2. Muss Outlook geöffnet sein, um den Code auszuführen?
Ja, Outlook sollte geöffnet sein, damit die VBA-Skripte funktionieren und auf die Outlook-Objekte zugreifen können.

3. Kann ich mehrere Empfänger hinzufügen?
Ja, du kannst mehrere Empfänger hinzufügen, indem du die Recipients.Add-Methode mehrmals aufrufst.

4. Welche Excel-Version wird benötigt?
Der Code sollte mit Excel 2016 und neuer funktionieren, solange VBA unterstützt wird.

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