Hallo,
Ik probeer een vergaderverzoek te versturen vanuit VBA. Hij doet alles, behalve werkelijk een uitnodiging versturen.
- Sluit ik af met .send, dan heeft hij de afspraak niet opgeslagen en ook niet verstuurd.
- Wanneer ik afsluit met .save ipv .send dan heeft hij keurig een afspraak voor me gemaakt en als ik dan in de afspraak kijk zie ik geen uitnodigingen staan tenzij ik op deelnemers uitnodigen klik. Dan staan ze er wel in, maar staat er bij dat ze niet verzonden zijn. (logisch, ik heb geen .send gekozen, maar ook bij .save & .send doet hij dit niet)
-Sluit ik af met .display, krijg ik ook keurig de afspraak te zien en zie ik wederom de uitgenodigden weer als ik op "deelnemers uitnodigen" klik, maar zijn ze niet verzonden, pas dan veranderd de knop opslaan in verzenden en als ik dan op send klik verstuurd hij ze ook. Omdat dit straks een grote verzamellijst wordt die afspraken gaat plannen is dit niet gewenst.
Wie weet waar het fout gaat? Ik gebruik Office 2010 en dit is de code die ik gebruik:
Ik probeer een vergaderverzoek te versturen vanuit VBA. Hij doet alles, behalve werkelijk een uitnodiging versturen.
- Sluit ik af met .send, dan heeft hij de afspraak niet opgeslagen en ook niet verstuurd.
- Wanneer ik afsluit met .save ipv .send dan heeft hij keurig een afspraak voor me gemaakt en als ik dan in de afspraak kijk zie ik geen uitnodigingen staan tenzij ik op deelnemers uitnodigen klik. Dan staan ze er wel in, maar staat er bij dat ze niet verzonden zijn. (logisch, ik heb geen .send gekozen, maar ook bij .save & .send doet hij dit niet)
-Sluit ik af met .display, krijg ik ook keurig de afspraak te zien en zie ik wederom de uitgenodigden weer als ik op "deelnemers uitnodigen" klik, maar zijn ze niet verzonden, pas dan veranderd de knop opslaan in verzenden en als ik dan op send klik verstuurd hij ze ook. Omdat dit straks een grote verzamellijst wordt die afspraken gaat plannen is dit niet gewenst.
Wie weet waar het fout gaat? Ik gebruik Office 2010 en dit is de code die ik gebruik:
Code:
Sub SetAppt()
Dim olApt As Object ' Outlook.AppointmentItem
Dim olapp As Object ' Outlook.Application
Dim myRequiredAttendee As Object
Dim i As Long
Dim apptRange As Variant
Dim strInfo As String
Dim strtitle As String
Dim intstijl As Integer
Dim intreply As Integer
strInfo = "Weet u zeker dat u deze afspraken in uw agenda wil zetten?"
strtitle = "Agenda vullen"
intstijl = vbOKCancel + vbDefaultButton2
intreply = MsgBox(strInfo, intstijl, strtitle)
[INDENT]If intreply = vbOK Then
Const olAppointmentItem As Long = 1
' create outlook
Set olapp = GetOutlookApp
[INDENT]If olapp Is Nothing Then
MsgBox "Kan Outlook niet Starten"
Exit Sub
End If[/INDENT]
' read appts into array
apptRange = Range(Cells(2, 1), Cells(Rows.Count, 7).End(xlUp)).Value
For i = LBound(apptRange) To UBound(apptRange)
Set olApt = olapp.CreateItem(olAppointmentItem)
[INDENT]With olApt
.MeetingStatus = olMeeting
.Start = apptRange(i, 6)
[INDENT]If InStr(apptRange(i, 7), "Hour") > 0 Then
' numeric portion cell is delimited by space
.Duration = 60 * Split(apptRange(i, 7), " ")(0)
Else
.Duration = apptRange(i, 7)
End If[/INDENT].Subject = apptRange(i, 1)
.Location = apptRange(i, 3)
.Body = apptRange(i, 2)
.ReminderSet = apptRange(i, 4)
.ReminderMinutesBeforeStart = apptRange(i, 5)
.Importance = 2
End With[/INDENT]Set myRequiredAttendee = olApt.Recipients.Add("rboer@harsco.com")
myRequiredAttendee.Type = olRequired
Set myResourceAttendee = olApt.Recipients.Add("testlocatie")
myResourceAttendee.Type = olResource
olApt.Send
'olApt.Display
'olApt.Save
Next i
MsgBox "Er zijn " & i - 1 & " afspraken toegevoegd aan uw agenda."
Set olApt = Nothing
End If[/INDENT]
End Sub
Laatst bewerkt: