VB ACCESS ET OUTLOOK

pepe013 Messages postés 42 Date d'inscription jeudi 21 novembre 2002 Statut Membre Dernière intervention 2 juin 2006 - 15 janv. 2003 à 09:05
BDC3 Messages postés 1 Date d'inscription mardi 28 juin 2005 Statut Membre Dernière intervention 28 juin 2005 - 28 juin 2005 à 17:29
8-) pépé

Salut !

Je voudrais recuperer un mail dans une textbox sous vba(access) et l'envoyer sur outlook comment faire ?

7 réponses

Dachup Messages postés 7 Date d'inscription jeudi 9 janvier 2003 Statut Membre Dernière intervention 21 février 2003
15 janv. 2003 à 11:15
Dans cet exemple, toutes les informations à envoyer se trouvent dans un seul formulaire.
1. Créer le formulaire de saisie du message.
2. Dans la boîte à outils, désactiver l'assistant.
3. Sélectionner l'outil Bouton de commande et cliquer dans le formulaire à l'emplacement où doit se trouver le bouton.
4. Ouvrir l'onglet Format de la feuille de propriétés, renseigner la propriété Légende ("Envoyer", par exemple).
5. Ouvrir l'onglet Evénement, cliquer dans la zone de texte de la procédure Sur clic, puis sur le bouton de création de code
6. Sélectionner Générateur de code et cliquer sur OK.
7. Taper le code ci-dessous :
Le code ci-dessous peut être transposé intégralement dans une application, en adaptant le cas échéant, les termes en italiques qui sont des noms de variables
? Avant de taper ou de copier le code ci-dessous, il faut vérifier que la référence Microsoft Outlook 9.O Object Library est définie.

'Déclaration des variables objets Outlook
Dim appOutlook As New Outlook.Application
Dim nspOutlook As NameSpace
Dim mpfMail As MAPIFolder
Dim olkMail As MailItem

?Envoi du message
Set nspOutlook = appOutlook.GetNamespace("MAPI")
Set mpfMail = nspOutlook.GetDefaultFolder(olFolderOutbox)
Set olkMail = mpfMail.Items.Add 'Nouveau message

olkMail.To = EMAIL 'Destinataire (1)
olkMail.Subject = OBJET 'Objet (1)
olkMail.Body = MESSAGE (1)

olkMail.Send

(1) Les éléments EMAIL, OBJET et MESSAGE sont des noms de champs propres à l'exemple dont est tiré le code ci-dessus.

J'ai une autre solution, avec un formulaire, qui me permet d'avoir une liste des adresses les plus utilisées (dans une table) qui ensuite par clic sur un bouton ouvre la fenêtre Outlook de saisie d'un message, sans lancer Outlook.
0
pepe013 Messages postés 42 Date d'inscription jeudi 21 novembre 2002 Statut Membre Dernière intervention 2 juin 2006
15 janv. 2003 à 12:24
je te remerci mais j'ai trouvé ce que je voulais regarde c'etais juste ça :

ret = Shell("c:\program files\internet explorer\iexplore.exe mailto: " & Email)
Email etant une variable qui contient le mail
je te remercie mais je vais quand meme etudier ta source

8-) pépé
0
pepe013 Messages postés 42 Date d'inscription jeudi 21 novembre 2002 Statut Membre Dernière intervention 2 juin 2006
16 janv. 2003 à 11:53
Ma syntaxe n'etais pas optimiser je vous donne la bonne

' permet d'ouvrir outlook et le mail est passé en paramètre ( il faut rajouter Microsoft Outlook 10.0 Object library)
Dim Olook As Outlook.Application
Dim Omail As MailItem
Set Olook = New Outlook.Application
Set Omail = Olook.CreateItem(olMailItem)
Omail.To = T_email <---- l'adresse du destinataire
Omail.Display

8-) pépé
0
toutinfo Messages postés 3 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 16 mai 2003
16 mai 2003 à 19:16
le code suivant fonctionne pour importer les RDV (pas tous les champs) dans une table calendrier.
Public Function Liste_Calendar()

On Error Resume Next

Dim OutApp As New Outlook.Application
Dim Space As Outlook.NameSpace
Dim Calendar As Outlook.MAPIFolder
Dim Rdv As Variant
Dim Nbe
Dim iB As Integer
Set db = CurrentDb()
Set Trav1 = db.OpenRecordset("Calendrier", dbOpenDynaset)
Set Space = OutApp.GetNamespace("MAPI")
Set Calendar = Space.GetDefaultFolder(olFolderCalendar)
'msgbox calendar.Items.Count
For iB = 1 To Calendar.Items.Count
Set Rdv = Calendar.Items(iB)
If Rdv.AllDayEvent = False Then
Trav1.AddNew
Trav1!Début = Mid(Rdv.Start, 1, 10)
Trav1!Début1 = Mid(Rdv.Start, 12, 8)
Trav1!Fin = Mid(Rdv.End, 12, 8)
Trav1!Objet = Rdv.Subject
'
' champs non utiles
'MsgBox rdv.Organizer
'MsgBox rdv.RequiredAttendees
'MsgBox rdv.Location
Trav1.Update
Nbe = Nbe + 1
End If
Next iB
OutApp.Quit
Trav1.Close
db.Close
MsgBox Nbe & " RENDEZ VOUS DANS LA BASE. "

End Function
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_BRN Messages postés 2 Date d'inscription mercredi 17 septembre 2003 Statut Membre Dernière intervention 16 décembre 2003
16 déc. 2003 à 11:52
Jeannot
0
cs_BRN Messages postés 2 Date d'inscription mercredi 17 septembre 2003 Statut Membre Dernière intervention 16 décembre 2003
16 déc. 2003 à 11:56
Comment désactiver les messagebox qui apparaissent lors de l'éxécution d'une macro( sous outlook)

Type de message : le programme tente d'acceder aux adresse électronique ......................
Voulez vous ......... ?

Jeannot
0
BDC3 Messages postés 1 Date d'inscription mardi 28 juin 2005 Statut Membre Dernière intervention 28 juin 2005
28 juin 2005 à 17:29
/auteurdetail.aspx?ID=541500 Bonjour,

Je souhaite extraire les champs d'un formulaire qui me provient par mail afin de les copier dans un documents excel, ou dans la liste des contact outlook avec une catégorie P.
Je sais qu'il existe déjà de nombreux script qui font cela et je ne désire pas réinventer la roue.
Merci de m'indiquer un tel script que j'adapterais ensuite.

Ex de mail :

Nom : xxx
Prénom : yy
adresse 1 : hgglflyuf
CP : bbbbb
souhaite g : OUI
souhaite gt : NON
....

Merci d'avance.
BDC3
0
Rejoignez-nous