begin process at 2012 02 10 00:56:08
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

VBA

 > ENVOYER UN MAIL

ENVOYER UN MAIL


 Information sur la source

Note :
7,33 / 10 - par 3 personnes
7,33 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :VBA Niveau :Initié Date de création :05/09/2003 Date de mise à jour :08/09/2003 16:06:49 Vu / téléchargé :15 424 / 1 471

Auteur : deedje

Ecrire un message privé
Commentaire sur cette source (12)
Ajouter un commentaire et/ou une note

 Description

Juste parce que j'ai cherché ce code, je me dis que d'autres pourrait en avoir besoin.

Le code est pas franchement compliqué. Cependant il faut modifier la constante MySrvExch au tout début pour qu'elle indique le nom de votre serveur de messagerie.

Ce code a été testé sur un evironnement Windows 2000 Advanced Server (technology NT), avec un serveur Exchange. Si vous êtes sur un PC personnel, peut-être qu'en mettant 'localhost' ça marchera, mais il n'y a aucune garantie...

La compilation a été faite avec Microsoft Visal InterDev 6.0. Je crois qu'il faut inclure la bibliothèque Microsoft CDO for Exchange 2000 library. Peut-être qu'une autre de type CDO ferait l'affaire.

Une fois compilé, il suffit de ce mettre en mode console, et de rentrer les infos :
> SendMail <exp.>;<dest.>;<objet>;<messa ge>

Bon courage à tous !!

Source

  • Attribute VB_Name = "Send"
  • Option Explicit
  • Const MySrvExch = "srvexch01"
  • Dim Expediteur, Destinataire, Objet, Corps As String
  • Sub Main()
  • Dim iMsg
  • Dim iConf
  • Dim Flds
  • Const cdoSendUsingPort = 2
  • Dim MyTab() As String
  • Dim MyErr As String
  • On Error GoTo ErrHandler
  • MyTab = Split(Command, ";")
  • Expediteur = MyTab(0)
  • Destinataire = MyTab(1)
  • Objet = MyTab(2)
  • Corps = MyTab(3)
  • 'Objet message
  • Set iMsg = CreateObject("CDO.Message")
  • 'Configuration de l'objet
  • Set iConf = iMsg.Configuration
  • 'Mise en place des configurations pour envoi par le port 25
  • With iConf.Fields
  • .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = cdoSendUsingPort
  • .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = MySrvExch
  • .Update
  • End With
  • 'Configuration des champs entrés par l'utilisateur
  • With iMsg
  • .To = Destinataire
  • .From = Expediteur
  • .Subject = Objet
  • .TextBody = Corps
  • .Send
  • End With
  • Set iMsg = Nothing
  • MsgBox ("Message envoyé.")
  • End
  • ErrHandler:
  • MyErr = "Erreur dans le message: " & Err.Description
  • MsgBox (MyErr)
  • End Sub
Attribute VB_Name = "Send"
Option Explicit
Const MySrvExch = "srvexch01"
Dim Expediteur, Destinataire, Objet, Corps As String

Sub Main()
    
    Dim iMsg
    Dim iConf
    Dim Flds
    Const cdoSendUsingPort = 2
    
    Dim MyTab() As String
    
    Dim MyErr As String
On Error GoTo ErrHandler

    MyTab = Split(Command, ";")
    Expediteur = MyTab(0)
    Destinataire = MyTab(1)
    Objet = MyTab(2)
    Corps = MyTab(3)

    'Objet message
    Set iMsg = CreateObject("CDO.Message")

    'Configuration de l'objet
    Set iConf = iMsg.Configuration

    'Mise en place des configurations pour envoi par le port 25
    With iConf.Fields
       .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = cdoSendUsingPort
       .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = MySrvExch
       .Update
    End With

    'Configuration des champs entrés par l'utilisateur
    With iMsg
       .To = Destinataire
       .From = Expediteur
       .Subject = Objet
       .TextBody = Corps
       .Send
    End With
    Set iMsg = Nothing

    MsgBox ("Message envoyé.")
    End

ErrHandler:
    MyErr = "Erreur dans le message: " & Err.Description
    MsgBox (MyErr)

End Sub

 

 Conclusion

Sur les conseils de hoeppe, j'ai rajouté en fichiers joint la DLL utilisée.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources de la même categorie

Source avec Zip GESTION PERSONNEL par oudlarbi
Source avec Zip Source avec une capture CALENDRIER EN VBA POUR EXCEL 2010 par nounou94
Source avec Zip Source avec une capture MANIPULER LES FENETRES ENFANT D'EXCEL par bigfish_le vrai
Source avec Zip Source avec une capture COLLECTION ID par Le Pivert
Source avec Zip Source avec une capture VBA MASQUE DE SAISIE NUMÉRIQUE par acive

Commentaires et avis

Commentaire de hoeppe le 06/09/2003 03:43:31

son vouloir etre trop dur, l'utilisation cdo a deja ete faite plusieurs fois sur le site et ce de facon plus explicite.Pour une premiere source, c'est sympa mais  Set iMsg = CreateObject("CDO.Message")
impose d'avoir une DLL (sait plus laquelle) exclue des config de base. bon courage et bonne continuation .

Commentaire de linkinpar236737 le 06/09/2003 10:13:21

un zip avec un exe ca serait bien :-P

Commentaire de deedje le 08/09/2003 15:39:11

hoeppe ->
je recherche très souvent des codes sur vbfrance, et si je me suis décidé à mettre celui-ci, c'est juste parce qu'il m'a été bien utile et que je me dis que d'autres voudront faire ce même genre de chose. En ce qui concerne la DLL, je n'ai rien rajouté de plus que la librairie décrite à ma config de base. Pour la librairie, je l'ai effectivement signalé.

linkinpar236737 ->
Je ne peux pas mettre d'exe puisque la constante MySrvExch doit de toute façon être changé. Je comprends que ça aurait été plus facile. Désolé.

Commentaire de hoeppe le 08/09/2003 15:57:44

salut deedje,
si tu pouvais juste signaler le fichier DLL en question s'il te plait ca pourrait aider ceux qui n'ont pas des config dites importantes. j'ai  souvent trouvé des sources sur vbfrance et ailleurs ou les fichiers dll etaient usitées et citée smais  pas le nom de fichier qui correspond:galère.
Perso, je trouve ca sympa de partager ses idées et sources.
merci.

Commentaire de deedje le 08/09/2003 16:09:13

Voila voila, vous trouverez le fichier CDO.DLL en zip avec le programme.

Commentaire de mercier le 03/11/2003 16:58:26

comment faire pour arracher les fichiers ?

Commentaire de psycomel le 29/12/2003 01:33:06

et moi ca marche sans cocher une seule référence.
comment ceal se fait-il ? c'est très intriguant. lol
Sinon pour attacher les fichiers tu peux faire :
.AddAttachment("C:Mes FichiersMon Fichier_2.ext")
dans ton with..

si kkun pouvait trouver une explication logique au fait ke ca ne marche sans rien .... tchoaes

Commentaire de milkLOLO le 13/02/2004 12:07:51

Merci pour le code , ça marche (avec au minimum W2000 ou outlook2000) en spécifiant le nom du  serveur SMTP
Pour envoyer à plusieurs destinataires, séparer les adresses mail d'une virgule
note : 10/10
RMQ: pour compiler , pas besoin de référencer la dll CDO, mais que cela fonctionne, il faut que cette dll soit présente sur le poste (pour pouvoir créer l'objet CDO)

Commentaire de ma1tr3g0n20 le 29/09/2004 11:09:10

Bonjour à tous,
google m'envoie ici pour une recherche sur cdo.
je suis sous xp, j'avais l'habitude d'utiliser la bibliothèque cdonts.dll sous 2000 mais malheureusement, cdosys.dll ne renferme pas les memes proprietes et methodes que la version précedente (cdonts).
qqun peut il m'expliquer pourquoi ?

A+

Commentaire de hoeppe le 29/09/2004 14:17:06

pour mercier : arracher des fichier??? tu as pris de la drogue ou quoi??? pauvres fichiers.. MDR

pour psycomel : verifie ta config : ca vient de là!

pour ma1tr3g0n20 : les refontes de DLL, y en a de temps en temps (rarement, soit) chez crosoft.

@+

Commentaire de Yoyo2B le 11/05/2005 15:48:13

pas besoin d'ajouter une référence si vous avez outlook, outlook express ou  exchange sur le poste local.

Commentaire de hoeppe le 11/05/2005 18:02:26

et un troll, un.

"pas besoin d'ajouter une référence si " tu as ecrit.

Le si est, personnellement, de trop.

bon troll quand meme.

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,281 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales