Formulier sluit niet (meteen) na uitvoeren functie

Status
Niet open voor verdere reacties.

btl

Gebruiker
Lid geworden
9 dec 2004
Berichten
32
Goedemorgen,

Ik heb een formulier waarop ik een actie voor een college registreer. Bij het drukken op de knop wordt deze actie prima uitgevoerd. Echter sluit het formulier nog niet!

Dit is de code:

Code:
Private Sub Knop104_Click()
OutlookTask
DoCmd.Close
End Sub

Function OutlookTask()
Dim NowDate As Date, DateEnd As Date
Dim Task As Outlook.TaskItem
    
    Set Task = Outlook.CreateItem(olTaskItem)
    NowDate = Now()
    DateEnd = Me.Datum_deadline
        If DateAdd("d", -1, DateEnd) >= 1 Then
        DateEnd = DateAdd("d", -1, DateEnd)
    End If
    With Task
        .Subject = Me.Account & " " & Me.Contactpersoon
        .Body = Me.Omschrijving_actie
        .Assign
        .Recipients.Add Me.Toegewezen_aan
        .DueDate = Me.Datum_deadline
        .Importance = (olImportanceHigh)
        .ReminderSet = True
        .Save
              End With

End Function

Als de functie wordt uitgevoerd, krijg ik in outlook wel een melding: 160420.melding outlook.jpg

Wellicht heeft dat er wat mee te maken... Bij een 2e poging lukt het namelijk wel! Maar dan krijgt de college 2x dezelfde taak toegewezen.
 
Je kunt de zaak eens omdraaien, want je zit nu inderdaad met een timing probleem. Dat venstertje kun je overigens omzeilen als je het programma ClickYes downloadt en installeert, want je hebt te maken met een overdreven beveiligingsprotocol in (een wat oudere versie van) Outlook.
Maar je kunt dit eens proberen:
Code:
Private Sub Knop104_Click()
Dim Deadline As Date
Dim sAccount As String, sAccount As String, CP As String, sOmschrijving As String, sToegewezen As String
    
    Deadline = Me.Datum_deadline
    sAccount = Me.Account
    sCP = Me.Contactpersoon
    sOmschrijving = Me.Omschrijving_actie
    sToegewezen = Me.Toegewezen_aan
    DoCmd.Close acForm, Me.Form.Name
    OutlookTask Deadline, sAccount & " " & sCP, sOmschrijving, sToegewezen
End Sub

Code:
Function OutlookTask(Deadline As Date, Subject As String, Text As String, Recip As String)
Dim NowDate As Date, DateEnd As Date
Dim Task As Outlook.TaskItem
    
    Set Task = Outlook.CreateItem(olTaskItem)
    NowDate = Now()
    DateEnd = Deadline
    If DateAdd("d", -1, DateEnd) >= 1 Then DateEnd = DateAdd("d", -1, DateEnd)
    With Task
        .Subject = Subject
        .Body = Text
        .Assign
        .Recipients.Add Recip
        .DueDate = Deadline
        .Importance = (olImportanceHigh)
        .ReminderSet = True
        .Save
    End With

End Function
Geen garantie natuurlijk; ik weet je veldinstellingen niet dus ik heb een slag geslagen naar de variabelen :).
 
Wat vogelen en variabelen aanpassen en het werkt inderdaad! Thanks!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan