Outlook Waarschuwing bij versturen Excel via VBA

Status
Niet open voor verdere reacties.

Hans Russens

Gebruiker
Lid geworden
4 mei 2008
Berichten
23
Als ik (met behulp van de code van Ron de Bruin) een bestand direct wil verturen met Outlook krijg ik de volgende waarschuwing:

! Er wordt vanuit een programma geprobeerd namens u
automatisch e-mail te verzenden.
Wilt u dit toestaan?

Als u deze bewerking niet had verwacht, is er mogelijk
sprake van een virus en moet u nee kiezen.
(zie ook bijlage)

Er gaat dan een tijdbalk lopen en na ongeveer 5 seconden kan ik verder.

Ik heb al geprobeerd de waarschuwing in VBA (Excel) te omzeilen met [Application.DisplayAlerts = False] maar heb het vermoeden dat het meer een Outlook ding is.

Code die ik gebruik om te verzenden:
Code:
Dim OutApp As Object
    Dim OutMail As Object
    Set OutApp = CreateObject("Outlook.Application")
    OutApp.Session.Logon
    Set OutMail = OutApp.CreateItem(0)
    On Error Resume Next
    With OutMail
        .To = "Hans.Russens@Orange.nl"
        .CC = ""
        .BCC = ""
        .Subject = ""
        .Body = ""
 Application.DisplayAlerts = False
       .Send   'or use .Display
 Application.DisplayAlerts = True
    End With
    On Error GoTo 0
    Set OutMail = Nothing
    Set OutApp = Nothing

Kan iemand me hierbij helpen.

Alvast bedankt,

Hans
 

Bijlagen

  • ScreenShot056.jpg
    ScreenShot056.jpg
    15,5 KB · Weergaven: 136
Laatst bewerkt door een moderator:
Je kan een hulpprogramma gebruiken, express click yes, hetgeen je kan aanroepen in vba dat ervoor zorgt, middels wat lijntjes code, dat het waarschuwingsbericht automatisch wordt verwerkt. Nadeel is dat deze niet werkt als je screensaver opstaat. M.a.w. je moet aan je pc aan het werken zijn.

Manueel loop je door de code totdat je het waarschuwingsbericht krijgt. Voor deze lijn roep je dan een sub aan dewelke dit programma klaar maakt om het waarschuwingsbericht te verwerken. Na deze lijn roep je een sub aan dewelke de effectieve 'druk op de knop' doet.

Charlize
 
Laatst bewerkt:
Charlize,

Bedankt voor jouw antwoord, ik ben echter nog niet zover dat ik helemaal begrijp wat je bedoeld met de code die toegevoegd moet worden. Heb je daar misschien wat specifieke voorbeelden van??

Alvast bedankt,

Hans
 
Charlize,

Bedankt voor jouw antwoord, ik ben echter nog niet zover dat ik helemaal begrijp wat je bedoeld met de code die toegevoegd moet worden. Heb je daar misschien wat specifieke voorbeelden van??

Alvast bedankt,

Hans

Ik heb op dit forum even gezocht op "express click yes" en de eerste hit leverde me de volgende website op:
http://www.contextmagic.com/express-clickyes/

Misschien helpt het je verder.
 
Ik heb op dit forum even gezocht op "express click yes" en de eerste hit leverde me de volgende website op:
http://www.contextmagic.com/express-clickyes/

Misschien helpt het je verder.

Kijk da's mooi,
Ik heb de "standaard" gratis versie geïnstalleerd, deze doet precies wat het beloofd. de dialoog komt nog wel op, 5 seconden wachten waarna het hulpprogramma de [Ja] knop indrukt. De PRO versie laat je aangeven welk programma je toegang wilt verlenen om automatisch mail te versturen en werkt perfect voor hetgeen ik het in wil gaan zetten. Alleen jammer dat het na 30 dagen $ 40 kost. Gelukkig hebben we een harde Euro waardoor het nog "maar" € 26 is.

Ik laat de vraag nog een weekje openstaan, wie nog goeie ideen heeft nodig ik uit nog te reageren.

Nogmaals allemaal bedankt zover.
 
Kijk da's mooi,
Ik heb de "standaard" gratis versie geïnstalleerd, deze doet precies wat het beloofd. de dialoog komt nog wel op, 5 seconden wachten waarna het hulpprogramma de [Ja] knop indrukt. De PRO versie laat je aangeven welk programma je toegang wilt verlenen om automatisch mail te versturen en werkt perfect voor hetgeen ik het in wil gaan zetten. Alleen jammer dat het na 30 dagen $ 40 kost. Gelukkig hebben we een harde Euro waardoor het nog "maar" € 26 is.

Ik laat de vraag nog een weekje openstaan, wie nog goeie ideen heeft nodig ik uit nog te reageren.

Nogmaals allemaal bedankt zover.
Nee nee, je moet het venster wegklikken met de code die je inbouwt in je routine om een mail te sturen. Hier een voorbeeldje betreffende je code. Je zal wel manueel met F8 moeten debuggen om te zien waar het waarschuwingsvenster verschijnt. Heb wat commentaar bijgeschreven. Hopelijk lukt het.
Code:
Option Explicit

' Bepaald de Windows' API functions
' Deze worden gebruikt door de ClickYes tool
Private Declare Function RegisterWindowMessage _
        Lib "user32" Alias "RegisterWindowMessageA" _
        (ByVal lpString As String) As Long

Private Declare Function FindWindow Lib "user32" _
        Alias "FindWindowA" (ByVal lpClassName As Any, _
        ByVal lpWindowName As Any) As Long

Private Declare Function SendMessage Lib "user32" _
        Alias "SendMessageA" (ByVal hwnd As Long, _
        ByVal wMsg As Long, ByVal wParam As Long, _
        lParam As Any) As Long

'Deze worden gebruikt door de freeware ClickYes tool
Public wnd As Long
Public uClickYes As Long
Public Res As Long

Sub versturen_mail()
Dim OutApp As Object
Dim OutMail As Object
    Set OutApp = CreateObject("Outlook.Application")
    'Waar je deze regel moet zetten, moet je even uitzoeken
    'door handmatig de code te doorlopen totdat er
    'een waarschuwingsvenster opspringt.
    'De regel ervoor zet je de volgende regel
    'Om duidelijk te zijn, ik weet dus niet of
    'dit de regel is waar je volgende codelijn moet plaatsen
    '****** klaarmaken om ja te drukken
    Call PrepareClickYes
    OutApp.Session.Logon
    'De regel erna zet je de volgende codelijn
    '****** op ja drukken
    Call PerformClickYes
    Set OutMail = OutApp.CreateItem(0)
    On Error Resume Next
    With OutMail
        .To = "Hans.Russens@Orange.nl"
        .CC = ""
        .BCC = ""
        .Subject = ""
        .Body = ""
        Application.DisplayAlerts = False
        .Send   'or use .Display
        Application.DisplayAlerts = True
    End With
    On Error GoTo 0
    Set OutMail = Nothing
    Set OutApp = Nothing
End Sub

Sub PrepareClickYes()
'deze routine wordt aangeroepen alvorens je een bericht
'wenst te bewerken
    uClickYes = RegisterWindowMessage("CLICKYES_SUSPEND_RESUME")
    wnd = FindWindow("EXCLICKYES_WND", 0&)
    Res = SendMessage(wnd, uClickYes, 1, 0)
End Sub

Sub PerformClickYes()
'Wordt onmiddellijk aangeroepen na de codelijn die het
'bericht wenst te veranderen. Klik ja en zet ClickYes
'tooltje terug in suspend mode. Wanneer een ander programma
'toegang wilt hebben, krijg je nog steeds dit waarschuwings-
'venster.
    Res = SendMessage(wnd, uClickYes, 0, 0)
End Sub
Charlize
 
Laatst bewerkt:
Charlize,

Bedankt voor jouw toevoeging, hiermee "bestuur" je inderdaad de gratis versie van [Express Click Yes] wat zeker een toevoeging is (en veiligheid).
Met jouw code geef je Excel even de vrijheid om automatisch een E-mail te sturen, waarna de beveiliging weer ingeschakeld wordt door [Express Click Yes] uit te zetten:confused:

Het aan en uitzetten kan het best waar ik de display alert aan en uit had gezet:
---------------------
Set OutMail = OutApp.CreateItem(0)
On Error Resume Next
With OutMail
.To = "Hans.Russens@Orange.nl"
.CC = ""
.BCC = ""
.Subject = ""
.Body = ""
Call PrepareClickYes
.Send 'or use .Display
Call PerformClickYes
End With
On Error GoTo 0
Set OutMail = Nothing
Set OutApp = Nothing
-----------------------

Helaas blijft de dialoog nog voor 5 seconden opkomen.
Ik ben ook nog met hulpprgramaatjes bezig geweest waardoor Excel "Always on Top" blijft (met [Deskpins} http://users.forthnet.gr/pat/efotinis/programs/deskpins.html ) zodat de dialoog "achter" Excel blijft maar dat is het ook niet echt.
 
Thnx

Zoals aangegeven heb ik de vraag nog een week laten openstaan.
Ik sluit deze nu af, mocht je echter nog oplossingen weten graag bericht op Hans.Russens@Orange.nl

Allemaal bedankt voor het meedenken en aandragen van oplossingen:thumb::thumb:

Groet,

Hans
 
Toch nog goed nieuws

Dankzij een tip van W.E. is het toch gelukt om zonder "Express Click Yes" een bericht te vertsturen.
Mocht je hier ook je voordeel mee willen doen kijk dan op:
http://www.download3k.com/Internet/Email/Download-Advanced-Security-for-Outlook.html
Hier kun je "Advanced Security for Outlook 1.42" waarmee je Outlook naar je hand kunt zetten.

--Stop Outlook,
--Run setup vanuit security_outlook.zip in de bijlage,
--Start je Excel programma en verstuur mail en wacht op pop-up en stel de beveiliging in (vergeet niet aan te vinken om dit voor altijd te doen als je dat wil),
--Klaar.

Veel plezier en W bedankt voor de tip:thumb::thumb:.

Groeten
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan