Kelly hat ein Arbeitsblatt, in dem sie eine Tabelle mit Daten hat, die als Abschlussdaten verwendet werden, um Werbung in die lokalen Gelben Seiten zu bringen. Sie möchte diese Daten in Outlook Calendar

importieren mit einer 72-Stunden-Erinnerung, aber einige der Daten ändern sich ständig in Zahlen.

Kelly fragt sich, wie sie die Excel-Daten nach Bedarf in Outlook integrieren kann.

Die Arbeit mit Outlook ist etwas „höher“ als das herkömmliche Excel-Makro, da Sie nicht nur wissen müssen, wie Sie auf Excel-Daten im Makro zugreifen, sondern auch, wie Sie Outlook-Daten bearbeiten. Lassen Sie uns ein kurzes Szenario untersuchen, ohne genau zu wissen, welche Daten Sie vom Arbeitsblatt zum Outlook-Termin übertragen müssen.

Angenommen, Sie haben ein Arbeitsblatt, das eine Reihe von Zeilen enthält, von denen jede einen einzelnen Termin darstellt, den Sie erstellen möchten. Jeder Termin enthält Informationen in sieben Spalten wie folgt von links nach rechts:

Betreff. * Text, der das Ereignis / den Termin beschreibt (z. B. „Erinnerung an die Gelben Seiten“)

Ort. * Text, der den Ort der Veranstaltung beschreibt, z. B. ein Besprechungsraum oder eine Konferenznummer (dies ist optional)

Startdatum / -zeit. * Geben Sie das Datum und die Uhrzeit ein, zu der das Ereignis in einem Standard-Excel-Datumsformat beginnen soll (Sie können es nach Belieben anzeigen)

Dauer. Ganzzahl, die eine Anzahl von Minuten für den Besetztstatus des Termins darstellt. Ganzzahl, die einen optionalen Wert darstellt, der angibt, ob die Zeit als Frei (0), Vorläufig (1), Besetzt (2) oder Abwesend (3) angezeigt werden soll

Erinnerungszeit. * Ganzzahl, die eine Anzahl von Minuten vor dem Termin darstellt, zu dem eine Erinnerung angezeigt werden soll (wie in 4320, dh die Anzahl der Minuten in 3 Tagen)

Text. * Text, der alle Details beschreibt, die Sie möglicherweise in den Text des Termins einfügen möchten

Mit diesen Daten können Sie ein Makro verwenden, um alle Zeilen zu durchlaufen (beginnend mit der zweiten Zeile, vorausgesetzt, die erste Zeile hat Überschriften)

und erstellen Sie einen Termin für jede Zeile.

Sub AddAppointments()

' Create the Outlook session     Set myOutlook = CreateObject("Outlook.Application")



' Start at row 2     r = 2

Do Until Trim(Cells(r, 1).Value) = ""

' Create the AppointmentItem          Set myApt = myOutlook.createitem(1)

' Set the appointment properties         myApt.Subject = Cells(r, 1).Value         myApt.Location = Cells(r, 2).Value         myApt.Start = Cells(r, 3).Value         myApt.Duration = Cells(r, 4).Value         ' If Busy Status is not specified, default to 2 (Busy)

If Trim(Cells(r, 5).Value) = "" Then             myApt.BusyStatus = 2         Else             myApt.BusyStatus = Cells(r, 5).Value         End If         If Cells(r, 6).Value > 0 Then             myApt.ReminderSet = True             myApt.ReminderMinutesBeforeStart = Cells(r, 6).Value         Else             myApt.ReminderSet = False         End If         myApt.Body = Cells(r, 7).Value         myApt.Save         r = r + 1     Loop End Sub

Das Makro durchläuft die Zeilen so lange, bis die Spalte Betreff leer ist.

_Hinweis: _

Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.

ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.

Dieser Tipp (7349) gilt für Microsoft Excel 97, 2000, 2002 und 2003.