2016-05-04 17 views
0

Ich bin an einem Projekt arbeiten, wo ich muß irgendwie den Inhalt einer Tabelle in einem Outlook programmatisch laden eingebettet zuzugreifen. Wenn es in einer E-Mail wäre, würde ich mich mit einem Objekt der Klasse "MailItem" beschäftigen und ich könnte HTMLBody aufrufen und die "table" -Tags verwenden, um den Inhalt zu erhalten. Nach meinem Wissen gibt es keine ähnliche Funktionalität für "AppointmentItem" -Objekte. Ich weiß, dass es die "RTFBody" -Funktion für MailItems gibt, aber ich weiß nicht, wie ich den Inhalt der Tabelle mit RTF abrufen kann und Google ist an dieser Stelle nicht sehr hilfreich. Für meine Zwecke kann die Tabelle in der Outlook-Einladung entweder ein eingebettetes Excel-Arbeitsblatt-Objekt oder einfach eine Tabelle sein, die Sie einfügen können, indem Sie auf Einfügen | Tabelle.wie programmatisch Zugriff Inhalt einer Tabelle in einem Outlook-Termine

Mein Endziel ist es, die Inhalte von Tabellen in einem gemeinsamen Team-Kalender eingebettet zu erhalten und sie zu einer Excel-Arbeitsblatt senden, wo ich ein Armaturenbrett Treffens meines Team hat gebaut haben. Der Inhalt der Tabellen, die in den Outlook-Einladungen im Teamkalender eingebettet sind, enthält Datenpunkte, die ich dynamisch im Dashboard anzeigen lassen möchte.

Jede Hilfe wäre sehr sein, sehr zu schätzen - Danke!

+0

Ist das nicht die gleiche Frage wie vor gefragt: http://stackoverflow.com/questions/37014913/htmlbody-workaround-for-olappointment-object? Darüber hinaus scheint es, dass es eine andere ist hier genau das gleiche Problem mit haben (gerade): http://stackoverflow.com/questions/37025009/vba-outlook-appointment#comment61615861_37025009 Vielleicht können Sie es gemeinsam heraus? – Ralph

+0

Ich bin unklar, was "Zugriff" in Ihrer Frage bedeutet. (1) Erhalten Sie Termine, die RTF-Stellen enthalten, die Sie extrahieren und bearbeiten möchten? (2) Haben Sie eine Tabelle in Excel, die Sie als Teil eines "AppointmentItem" verteilen möchten? Wenn (2), warum verteile ich die Excel-Arbeitsmappe nicht als Anhang? –

+0

Vielen Dank für Ihre Antworten. Tony - mit "access" meine ich einfach, dass die Werte in den relevanten Zellen der Tabelle gespeichert werden. – Michael

Antwort

0

Können Sie das versuchen?

Private Sub Add_Appointments_To_Outlook_Calendar() 

    'Include Microsoft Outlook nn.nn Object Library from Tools -> References 
    Dim oAppt As AppointmentItem 
    Dim Remind_Time As Double 

    i = 2 
    Subj = ThisWorkbook.Sheets(1).Cells(i, 1) 

    'Loop through entire list of Reminders to be added 
    While Subj <> "" 
     Set oAppt = Outlook.Application.CreateItem(olAppointmentItem) 

     oAppt.Subject = Subj 
     oAppt.Location = ThisWorkbook.Sheets(1).Cells(i, 2) 
     oAppt.Start = ThisWorkbook.Sheets(1).Cells(i, 3) 
     Remind_Time = ThisWorkbook.Sheets(1).Cells(i, 4) * 1 * 60 
     oAppt.ReminderMinutesBeforeStart = Remind_Time 
     oAppt.AllDayEvent = True 
     oAppt.Save 

     i = i + 1 
     Subj = ThisWorkbook.Sheets(1).Cells(i, 1) 
    Wend 
    MsgBox "Reminder(s) Added To Outlook Calendar" 

End Sub 

' The code comes from this link: 

http://officetricks.com/add-appointment-to-outlook-calendar-through-excel-macro-vba/

Ich schrieb tatsächlich ein Buch über das, und so viele andere Dinge. Sie finden es unter dem folgenden Link.

https://www.amazon.com/Automating-Business-Processes-Reducing-Increasing-ebook/dp/B01DJJKVZC?ie=UTF8&keywords=ryan%20shuell&qid=1463837322&ref_=sr_1_1&sr=8-1

Verwandte Themen