Outlook on top

Status
Niet open voor verdere reacties.

so10070

Gebruiker
Lid geworden
4 feb 2014
Berichten
424
Vanuit een procedure start ik Outlook mail op en wil deze bovenaan op het bureaublad laten verschijnen, bovenop mijn Accessapplicatie. Dit gebeurt nu niet, ofschoon ik het commando <AppOutlook.ActiveWindow.Activate> meegeef. Hoe breng ik Outlook naar boven? :confused:
Code:
Private Sub cmbDivisiesDircosScholen_DblClick(Cancel As Integer)
    Dim AppOutlook As Outlook.Application 'outlookapplicatie definiëren
    Dim MailOutlook As Outlook.MailItem 'mail definiëren
    Dim PlaatsMap1 As String
    Dim NrMededeling As Integer
    Dim EindeActie As Integer
    Dim sqlBijwerkQuery As String
    Dim sqlFilterOpLeegEvaType As String
    
    Set AppOutlook = CreateObject("Outlook.Application")
    Set MailOutlook = AppOutlook.createItem(olMailItem)
        
    'hier eerst bestand aanmaken en dan verder zonder query
    'eerst via sql een bijwerkquery laten lopen om het veld "Numeriek_Eva_ID" in te vullen
    'dan een backup oude bestand "data_evaluaties", kwestie van zeker te zijn
    DoCmd.SetWarnings False
    sqlBijwerkQuery = "UPDATE [data_evaluaties] " & _
        "SET [data_evaluaties].Numeriek_Eva_ID = [data_evaluaties]![Eva_ID];"
    DoCmd.RunSQL sqlBijwerkQuery
    DoCmd.CopyObject , "kopie van data_evaluaties", acTable, "data_evaluaties"
    DoCmd.OpenQuery "QryAanmakenBestandDircos"
    DoCmd.SetWarnings True
    
    'indien er geen kwaliteitskaarten ingegeven zijn of het veld evaluatietype is niet ingevuld (A & B & C)
    'hierboven bij het aanmaken van het bestand via filter
    If DCount("*", "[TabelTijdelijkPerSchoolVoorDirCo]", "[SG_ID_1] = " & Me.cmbDivisiesDircosScholen.Column(5)) = 0 Then
        NrMededeling = 10
        EindeActie = info(NrMededeling)
    Else
        'Map in variabele zetten
        PlaatsMap1 = "C:\OpDo-FE\VerzendAccdb\DatabankFormulierDircos.accdb"
        'dan dit bestand kopiëren naar andere ACCDB
        'hiervoor DoCmd.CopyObject gebruiken
        DoCmd.SetWarnings False
        DoCmd.CopyObject PlaatsMap1, , acTable, "TabelTijdelijkPerSchoolVoorDirCo"
        DoCmd.SetWarnings True
        
        'hier melding dat IE op de achtergrond kan opgestart worden indien maar met 1 scherm gewerkt wordt.
        info (11)
 
        'hier automatisch Outlook openen met als bijlage het accdbfile
        With MailOutlook
            '.bodyformat = olFormatRichText
            '.to =
            '.cc =
            '.bc =
            .subject = "Bestand coördinerend directeur"
            .HTMLbody = "<p style='font-size:11pt;font-family:Arial;'>" & "Beste," & "</font>"
            .Attachments.Add (PlaatsMap1)
            .display
        End With
    End If
    
'Stop
    
    DoCmd.Close acForm, "FormulierKeuzeAanmakenBestandDircos"
    
    AppOutlook.ActiveWindow.Activate

    Set AppOutlook = Nothing
    Set MailOutlook = Nothing
End Sub
 
Probleem opgelost! Door het commando ".display" en het commando "AppOutlook.ActiveWindow.Activate" beide mee te geven in de VBA-code gaf een conflict. Heb het commando "AppOutlook.ActiveWindow.Activate" eruit gehaald en Outlook verschijnt nu on top. :d
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan