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

Forumthread: VBA Termin in Outlook einstellen

VBA Termin in Outlook einstellen
11.12.2017 21:03:14
Ni_Na
Hallo Zusammen,
ich habe eine Liste in Excel, die fortgeführt werden soll. Es werden verschiedene Informationen eingepfelgt, u.a. wird in der Excel-Liste ein bestimmtes Datum ermittelt.
Nun möchte ich, dass fünf Tage vor dem errechneten Datum ein Termin in Outlook samt Reminder erstellt wird.
Der Code funktioniert an sich auch, nur dass mir der Termin im Outlook stets auf den 30.12.1899 gelegt wird.
Function lvOutloook(Reminder As String, Beschreibung As String) As Boolean
Set OutApp = CreateObject("Outlook.Application")
Set apptoutApp = OutApp.CreateItem(1)
With apptoutApp
'     .Start = Format(Reminder, "dd.mm.yyyy") & "09:00"
.Start = Format(StartDatum, "m/d/yyyy") & "09:00"
.Subject = Beschreibung
.ReminderPlaySound = True
.ReminderSet = True
.Save
End With
Set apptoutApp = Nothing
Set OutApp = Nothing
lvOutloook = True
MsgBox "Termin an Outlook übertragen"
Exit Function
End Function
Sub test()
Dim Reminder As String, Beschreibung As String
Dim s As Object
Set s = ActiveWorkbook.Sheets(1)
Mitarbeiter = s.Cells(2, 1)
Dienstleister = s.Cells(2, 2)
Eintrittsdatum = s.Cells(2, 3)
Fristende = s.Cells(2, 4)
Reminder = Fristende - 5
Beschreibung = Mitarbeiter & " / " & Dienstleister & " / " & "Eintrittsdatum:" & " " &  _
Eintrittsdatum
lvOutloook Reminder, Beschreibung
End Sub

Was muss ich anders machen, damit Outlook das richtige Datum erkannt?
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: VBA Termin in Outlook einstellen
12.12.2017 06:54:26
JoWE
Hallo,
Dein Code schreibt das Datum so: "12.12.201709:00"
ein kleines Leerezichen vor "09:00" könnte das ändern.
Format(StartDatum, "m/d/yyyy") & " 09:00"
Gruß
Jochen
AW: VBA Termin in Outlook einstellen
12.12.2017 06:55:36
Bernd
bei mir geht es so:

With objTermin
.Subject = "Info von: " & objMail.sender & " am : " & Duration
.Body = objMail.Body
.Location = "Von Standort A: " & Place & " => " & Place2
'            .Start = #11/8/2011 1:45:00 PM#
'            .End = #11/8/2011 1:50:00 PM#
'            .Save

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

VBA: Termine in Outlook erstellen


Schritt-für-Schritt-Anleitung

Um einen Termin in Outlook mit Excel VBA zu erstellen, folge diesen Schritten:

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

  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf "VBAProject (DeineDatei.xlsx)", wähle Einfügen und dann Modul.

  3. Kopiere den folgenden Code in das Modul:

    Function lvOutloook(Reminder As String, Beschreibung As String) As Boolean
       Dim OutApp As Object
       Dim apptoutApp As Object
       Set OutApp = CreateObject("Outlook.Application")
       Set apptoutApp = OutApp.CreateItem(1)
       With apptoutApp
           .Start = Format(Reminder, "m/d/yyyy") & " 09:00"
           .Subject = Beschreibung
           .ReminderPlaySound = True
           .ReminderSet = True
           .Save
       End With
       Set apptoutApp = Nothing
       Set OutApp = Nothing
       lvOutloook = True
       MsgBox "Termin an Outlook übertragen"
    End Function
    
    Sub test()
       Dim Reminder As String, Beschreibung As String
       Dim s As Object
       Set s = ActiveWorkbook.Sheets(1)
       Mitarbeiter = s.Cells(2, 1)
       Dienstleister = s.Cells(2, 2)
       Eintrittsdatum = s.Cells(2, 3)
       Fristende = s.Cells(2, 4)
       Reminder = Fristende - 5
       Beschreibung = Mitarbeiter & " / " & Dienstleister & " / " & "Eintrittsdatum:" & " " & Eintrittsdatum
       lvOutloook Reminder, Beschreibung
    End Sub
  4. Passe die Zellreferenzen in Sub test() an, um die richtigen Daten aus Deiner Excel-Liste zu verwenden.

  5. Führe das Makro aus: Gehe zurück zu Excel, drücke ALT + F8, wähle test und klicke auf Ausführen.


Häufige Fehler und Lösungen

  • Fehler: Termin wird auf den 30.12.1899 gesetzt
    Lösung: Stelle sicher, dass das Datum im richtigen Format übergeben wird. Füge ein Leerzeichen zwischen dem Datum und der Uhrzeit ein:

    .Start = Format(Reminder, "m/d/yyyy") & " 09:00"
  • Fehler: Outlook öffnet sich nicht
    Lösung: Überprüfe die Outlook-Installation und die Berechtigungen für VBA-Makros. Stelle sicher, dass die Outlook-Anwendung auf Deinem Computer installiert ist.


Alternative Methoden

Wenn Du nicht mit VBA arbeiten möchtest, kannst Du auch die Funktion "Kalendereintrag" in Outlook direkt nutzen. Du kannst Termine manuell erstellen oder die Excel-Tabelle als CSV exportieren und in Outlook importieren.

Ein Beispiel für den Export:

  1. Speichere Deine Excel-Datei als CSV.
  2. Öffne Outlook und navigiere zum Kalender.
  3. Wähle "Importieren" aus dem Menü und folge den Anweisungen, um die CSV-Datei zu importieren.

Praktische Beispiele

Hier ist ein Beispiel, wie der VBA-Code mit einer Excel-Tabelle funktioniert:

Mitarbeiter Dienstleister Eintrittsdatum Fristende
Max Mustermann Firma XYZ 01.01.2023 01.02.2023

Wenn die Fristende-Zelle den Wert 01.02.2023 hat, wird ein Termin für 27.01.2023 um 09:00 Uhr in Outlook erstellt.


Tipps für Profis

  • Fehlerbehandlung: Implementiere Fehlerbehandlungsroutinen in Deinen VBA-Code, um unerwartete Fehler abzufangen.

    On Error GoTo ErrorHandler
    ' Dein Code hier
    Exit Sub
    ErrorHandler:
      MsgBox "Ein Fehler ist aufgetreten: " & Err.Description
  • Outlook Gruppenkalender erstellen: Wenn Du in einem Team arbeitest, kannst Du einen Gruppenkalender in Outlook erstellen, um alle Termine zentral zu verwalten.


FAQ: Häufige Fragen

1. Wie kann ich einen Termin in Outlook aus Excel erstellen?
Du kannst das oben beschriebene VBA-Skript verwenden, um einen Termin direkt aus Excel in Outlook zu erstellen.

2. Was muss ich tun, wenn ich einen Termin in Outlook importieren möchte?
Du kannst Deine Excel-Daten als CSV-Datei speichern und dann in Outlook importieren, indem Du die Importfunktion von Outlook nutzt.

3. Kann ich Erinnerungen für die Termine setzen?
Ja, im VBA-Code kannst Du die ReminderSet-Eigenschaft auf True setzen, um Erinnerungen für die Termine in Outlook zu aktivieren.

4. Welche Excel-Versionen unterstützen VBA für Outlook?
VBA für Outlook ist in den meisten Excel-Versionen ab Excel 2007 verfügbar. Achte darauf, dass Outlook auch installiert 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