MACRO VB POUR MS OUTLOOK YASSINE ETTARCHEGUE

Signaler
Messages postés
93
Date d'inscription
lundi 16 juin 2003
Statut
Membre
Dernière intervention
27 juin 2003
-
Messages postés
1
Date d'inscription
samedi 7 janvier 2006
Statut
Membre
Dernière intervention
9 janvier 2006
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/7620-macro-vb-pour-ms-outlook-yassine-ettarchegue

Messages postés
1
Date d'inscription
samedi 7 janvier 2006
Statut
Membre
Dernière intervention
9 janvier 2006

Bonjour,
quelqu'un peut-il me donner un tuyau concernant une macro que j'aimerai réaliser pour:
- ouvrir 1 par 1 tous les fichiers txt d'un dossier (dossier outlook ou dossier de l'explorer)
- faire un email avec chacun d'entre eux en copiant la ligne contenant OBJET et en la mettant en sujet, en mettant tout le texte dans le corps du message

voici ce que j'ai écri mais ça ne fonctionne pas

Sub msg()

'Procedure de traitement des messages
Dim folder As String
Dim MonMsg As Outlook.MailItem
Dim Myitem As Object
Dim MsgTxt As String
Dim txt As String
Dim myFolder As Outlook.MAPIFolder
Dim fs, f


Set myOlApp = CreateObject("Outlook.Application")
Set myNameSpace = myOlApp.GetNamespace("MAPI")
Set myFolder = myNameSpace.GetDefaultFolder(olFolderDrafts)


If myFolder.Items.Count = 0 Then 'si le dossier Draft est vide, il n'y a pas de msg à envoyer
MsgBox ("Pas de message dans le dossier Draft")
Exit Sub
Else
For i = 1 To myFolder.Items.Count 'pour tous les messages dans le dossier Draft

' Ouvrir le fichier attaché
Const ForReading 1, ForWriting 2, ForAppending = 3
Const TristateUseDefault -2, TristateTrue -1, TristateFalse = 0
Set f = fs.GetFile(myFolder.Items(i))
Set Myitem = f.OpenAsTextStream(ForWriting, TristateUseDefault)


' faire un copier de l'ensemble du texte appelé MsgTxt
myItem.Select.all
Selection.Copy

' faire nouveau message appelé "MonMsg"
Set MonMsg = olApp.CreateItem(olMailItem)


' coller le texte
MonMsg.Body = txt

' chercher le mot OBJET

' copier la ligne le contenant

' coller le texte dans SUBJECT
MonMsg.Subject = " test "

' mettre le destinataire toto
MonMsg.To = "toto@tata.tutu"

' envoyer
MonMsg.Send
Next

' effacer tous les messages dans le répertoire Draft

For i = 1 To myFolder.Items.Count
Set Myitem = myFolder.Items(1)
Myitem.Delete
Next
End If
End Sub

merci de votre aide
Messages postés
2
Date d'inscription
lundi 5 mai 2003
Statut
Membre
Dernière intervention
14 janvier 2004

bonjour, merci pour ton code en VBA qui nous permet de visiter la Tunisie!
As-tu une idée pour accéder directement au Folder "Dossiers Personnels"? je n'arrive pas avec :
Set myfolder = myNameSpace.GetDefaultFolder("Dossiers Personnels")
Messages postés
6
Date d'inscription
vendredi 1 août 2003
Statut
Membre
Dernière intervention
18 septembre 2003

Il s'agit ici d'un VBA, j'aimerais pouvoir faire la même chose en VB6, plus exactement enregistrer tous les mails en fichier txt mais pas ceux de la boite de reception mais d'un dossier de la boite aux lettres. Comment réussir à pointer dans un dossier de la bal ?
Messages postés
6
Date d'inscription
vendredi 1 août 2003
Statut
Membre
Dernière intervention
18 septembre 2003

Il s'agit ici d'un VBA, j'aimerais pouvoir faire la même chose en VB6, plus exactement enregistrer tous les mails en fichier txt mais pas ceux de la boite de reception mais d'un dossier de la boite aux lettres. Comment réussir à pointer dans un dossier de la bal ?
Afficher les 8 commentaires