Comment éviter les Perspectives d'avertissement de Sécurité pour la messagerie électronique de l'automatisation - VBA
Je suis en train d'envoyer un e-mail à partir d'Excel 2010 VBA, par le biais d'Outlook 2010. La plupart des autres réponses sur DONC ne semble pas avoir n'importe quelle méthode d'utilisation de VBA pour ce faire, ni pour Outlook et Excel 2010.
Faire tout gratuitement méthodes existent? Le Rachat méthode ne sera pas une option viable, à moins qu'il est facile à installer sur 10 machines à l'intérieur d'une grande entreprise.
C'est de cette façon que j'ai actuellement envoyer des e-mails:
Dim emailAddr As String
Dim OutApp As Object
Dim OutMail As Object
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
With OutMail
.To = "[email protected]"
.Subject = "Demande"
.HtmlBody = CombinedValueHtml
.Send
End With
Set OutMail = Nothing
Set OutApp = Nothing
Exit Sub
Merci à tous pour votre aide à l'avance.
Sont-ils à l'aide d'un serveur Exchange local ou sont-ils en utilisant un autre serveur de messagerie?
Il existe deux autres méthodes. 1) l'Abaissement de votre sécurité outlook (pas recommandé) 2) à l'Aide de l'API comme
Outlook est spécifiquement conçu pour prévenir vous en faisant cela. L'utilisateur doit toujours savoir que quelqu'un vous envoie des e-mails sur leur nom. (Après tout, c'est pourquoi l'avertissement a été ajouté à la première place) @SiddharthRout dit, vous pourriez être en mesure de break Outlook de sécurité par "l'utilisateur" avec la boîte de dialogue de sécurité, mais je suis assez certain il y aura des mesures d'atténuation en place pour rendre plus difficile pour vous de le faire.
Il existe deux autres méthodes. 1) l'Abaissement de votre sécurité outlook (pas recommandé) 2) à l'Aide de l'API comme
.FindWindow
à interagir avec outlook boîte de sécurité.Outlook est spécifiquement conçu pour prévenir vous en faisant cela. L'utilisateur doit toujours savoir que quelqu'un vous envoie des e-mails sur leur nom. (Après tout, c'est pourquoi l'avertissement a été ajouté à la première place) @SiddharthRout dit, vous pourriez être en mesure de break Outlook de sécurité par "l'utilisateur" avec la boîte de dialogue de sécurité, mais je suis assez certain il y aura des mesures d'atténuation en place pour rendre plus difficile pour vous de le faire.
OriginalL'auteur Paolo Bernasconi | 2012-08-12
Vous devez vous connecter pour publier un commentaire.
C'est une réponse partielle. J'ai fait un Wiki de la Communauté de répondre à l'attente de quelqu'un d'autre peut expliquer la dernière partie que je ne peux pas me rendre au travail.
Cette page web, http://msdn.microsoft.com/en-us/library/office/aa155754(v=office.10).aspx , explique les trois premières parties du processus. Il a été écrit en 1999 ne peut donc pas être suivies à la lettre, car il renvoie à d'anciennes versions de Windows et d'Office.
La première étape consiste à ajouter de Signature Numérique pour les Projets VBA pour votre installation d'Office même si je l'ai trouvé sous Outils Partagés plutôt que de la bureautique. Ne faites pas l'erreur de simplement ajouter de Signature Numérique pour les Projets VBA à Outlook, parce que, comme je l'ai découvert, cela signifie que vous désinstaller Word, Excel, etc.
La deuxième étape consiste à exécuter Selfcert.exe pour créer un certificat numérique dans votre propre nom.
La troisième étape est d'ouvrir l'éditeur VBA d'Outlook, sélectionnez Outils, puis le Certificat Numérique alors Choisir de signer le projet avec votre certificat.
Avec ces étapes, vous pouvez supprimer l'avertissement que Outlook contient des macros, mais cela ne supprime pas cet avertissement qu'une macro est accéder à des e-mails. Pour supprimer cet avertissement, vous avez besoin d'une quatrième étape qui consiste à placer votre certificat dans le de Confiance Magasin Autorités de certification Racine. Cette page web http://technet.microsoft.com/en-us/library/cc962065.aspx explique à propos de l'Autorité de Certification de Confiance Modèle, mais je ne peut pas utiliser correctement Microsoft Management Console à atteindre la quatrième étape.
OriginalL'auteur
Au lieu
.send
utiliser les éléments suivants:remarque: soyez prudent lorsque vous utilisez des touches de l'écran, si vous déplacez la souris et cliquez sur alors que le programme est en cours d'exécution, il peut changer ce qui se passe. outlook affiche sur ur de l'écran et de l'envoyer.. si vous travaillez sur quelque chose d'autre et ça vous dérange, oui.. pas la meilleure idée
.Affichage = affiche outlook, l'Application.SendKeys "%s" = automatiser raccourci clavier pour envoyer
OriginalL'auteur soccerplayer
Si vous n'avez pas envoyer le message immédiatement, mais juste de l'afficher et de permettre à l'utilisateur de faire des modifications (le cas échéant) et de les laisser appuyer sur le bouton envoyer d'épargne, ce serait le travail:
c'est à dire utiliser
au lieu de
OriginalL'auteur Alexander Remesch
Vous pouvez utiliser RedemptionLoader - il charge la dll directement et n'a pas besoin de la dll pour être installé à l'aide de la base de registre.
Voir aussi http://www.outlookcode.com/article.aspx?id=52 pour toutes vos options, bref, c'est soit MAPI Étendu en C++ ou Delphi, de la Rédemption (enveloppements MAPI Étendu et peut être utilisée en toutes les langues) ou d'un utilitaire comme ClickYes.
OriginalL'auteur Dmitry Streblechenko
J'ai expliqué comment vous pouvez utiliser vba pour envoyer des e-mails dans ce réponse, Vous trouverez une macro que j'utilise largement dans mon travail quotidien.
Suivantes bons conseils de @Floern, voici l'explication:
Pour insérer des images (signature que les images) vous pouvez utiliser le code suivant:
L'étape 1. Copiez ce code un coller dans le module de classe et le nom de module de classe comme "MailOptions"
L'étape 2. Dans un standar module vous permettra d'élaborer votre .contenu html et instancier un objet de la classe:
OriginalL'auteur Dani Aya