Macro outlook 2010 formaulaire

Signaler
-
 cmcicg -
Bonjour !

Je souhaite créer une macro fonctionnant sur outlook 2010 et qui me permettrait d'ouvrir un formulaire déjà existant et enregistré dans la mémoire de mon ordinateur (C:\\program files\office\outlok\etc...). Je pourrais ensuite affecter cette macro à un bouton créé spécialement à cet effet dans la barre de menu et cela m'éviterait d'aller tout le temps chercher le formaulaire dans l'arborescence.
Je voudrais que le formulaire apparaisse en cliquant sur le bouton.

Sauriez-vous de quelle manière je dois rédiger la macro car je n'ai aucune notion de programmation ?

nicolas

6 réponses

Messages postés
672
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
2 juin 2016
1
bonjour


je viens de prendre en main les macros sur Outlook 2010 cela fonctionne pour moi.
Tu m'incites donc à reporter mon ancienne expérience sur outlook 2003

Mais Si tu nous dis pas ce que tu veux programmer on ne pourra pas vous aider

Et en principe il faut faire l'effort d'apprendre (rechercher dans les tutoriels, par ex).

Pour commencer: Lancer l'éditeur de macro ALT+F11 et utiliser l'aide en ligne F10



Je viens de me faire un export de mes contacts
Fichier/Options/Personnaliser le ruban

A gauche
Catégorie de commande : sélectionner Macros
A droite
cocher "developeur"


Si vous avez déjà créer une macro dans l'éditeur ALTF11 vous la verrez donc à gauches sous macro

Il suffit alors de cliquer sur "ajouter" en selectionnant à droite le groupe personnalisé que vous aurez créé au prélable

Ayant fait ainsi , j'ai un onglet développeur et un bouton pour executer ma macro à chaque fois que je veux enregistrer mes contacts

et voici mon premier code sur l'enregistrement des contacts



Sub SaveOutlookContacts()
Dim oL As Object
Dim oLns As Object
Dim objFolder As Object
Dim objAllContacts As Object
Dim oContact As ContactItem
Set oL = New Outlook.Application
Set oLns = oL.GetNamespace("MAPI")
Set objFolder = oLns.GetDefaultFolder(olFolderContacts)
Set objAllContacts = objFolder.Items
Open "c:\contact.txt" For Output As #1
For Each oContact In objAllContacts
On Error Resume Next
Print #1, oContact.FullName
Print #1, oContact.CompanyName
Print #1, oContact.Email1Address
Print #1, oContact.Home2TelephoneNumber
Print #1, oContact.BusinessAddress
Print #1, oContact.BusinessTelephoneNumber
Print #1, oContact.HomeAddressCity
Print #1, oContact.HomeTelephoneNumber
Print #1, oContact.MobileTelephoneNumber
Print #1, oContact.HomeAddress
Next
Set oL = Nothing
Set oLns = Nothing
Set objFolder = Nothing
Set objAllContacts = Nothing
Set oContact = Nothing
Close #1
End Sub
OK c'est gentil mais ce n'est pas vraiment ce que je voulais.
Je cherche à savoir ce que je dois écrire entre Sub "" et End Sub, pour que la macro aille m'ouvrir un message pré enregistré dans la mémoire de mon ordinateur.
Affecter une macro à un bouton n'est pas un souci, je cherche juste le contenu de la macro.

Merci d'avance à tous les internautes.

Nicolas
Messages postés
672
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
2 juin 2016
1
Un message pré-enregistré il s'agit d'un message qu'on peut crée de toute pièce dans le code avec un corps de message (Body) au format Html par exemple?
Non le message pré enregistré en question est un formulaire, enregistré sous forme de modèle outlook (extension .oft). Dans ma boîte c'est ce qu'on appelle un masque, on l'ouvre et on n'a plus qu'à remplir des cases pré définies pour transmettre certaines instructions.

Merci

Nicolas
Messages postés
672
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
2 juin 2016
1
Reste à faire une fenetre pour selectionner les destinataires


Sub EnvoyerOFT()

Dim MonOutlook As Outlook.Application, Message As Outlook.MailItem, Destinataire As Recipient
Set MonOutlook = New Outlook.Application

Set Message = MonOutlook.CreateItemFromTemplate("C:\Program Files\Microsoft Office\Modèles\Outlook\email.oft")
Set Destinataire = Message.Recipients.Add("toto")
Destinataire.Type = olTo
Destinataire.Resolve
Message.Display

End Sub
De cette manière, cela marché très bien !
Merci pour votre aide précieuse, Loulou69.

Nicolas