Forum Clubic

Programmation VBA (excel) - Envoi d'un mail via lotus notes (excel)

Bonjour le forum,

J’essai désespérement d’envoyer un onglet d’un classeur excel dans le corps de message (et non en pièce jointe) d’un mail via le logiciel lotus notes mais malheuresement je n’y arrive pas.
En effet j’arrive seulement a envoyer le contenue d’une seule cellule.
J’ai donc décidé de transformer cet onglet en .GIF de manière a l’envoyer mais je n’y arrive pas.

Pour le moment j’ai le code suivant:

Sub EnvoiUnMailetarchiveenGIF()
    Dim MailAd As String
    Dim msg As String
    Dim Subj As String
    Dim URLto As String
    Dim MonMessage As Object
    Dim Plage As Range
    Dim Fold, Fold2, Fold3

MailAd = Sheets("information pour le mail").Range("C17")   'adresse Email
Subj = Sheets("information pour le mail").Range("F23")     'Titre du mail


'procedure pour créer un dossier (windows)
Fold = Sheets("information pour le mail").Range("B27").Value  '1er étape
Fold2 = Sheets("information pour le mail").Range("C27").Value  'adresse finale sans le nom du fichier
Fold3 = Sheets("information pour le mail").Range("E27").Value 'adresse finale avec le nom du fichier

If Dir(Fold, vbDirectory) = "" Then MkDir Fold
If Dir(Fold2, vbDirectory) = "" Then MkDir Fold2


'Exportation de l'onglet au format GIF
Sheets("TRAME").Select
'selection des cellules à copier
Set Plage = Sheets("TRAME").Range("B2:M40")
        Application.ScreenUpdating = False
        Workbooks.Add
        Plage.CopyPicture
        ActiveSheet.Paste


'Enregistrement en .GIF
With ActiveSheet.ChartObjects.Add(0, 0, Selection.Width, Selection.Height).Chart
    .Paste
    .Export Fold3, "GIF"
End With
       
    
'Copie dans un nouveau classeur
With ActiveSheet.ChartObjects("Graphique 2")
    .Activate
    .Copy
End With
       
'Erreur au niveau de la ligne ci dessous
msg = "" & Application.SendKeys("^v")   'Corps du message

URLto = "mailto:" & MailAd & "?subject=" & Subj & "&body=" & msg
ActiveWorkbook.FollowHyperlink Address:=URLto
    
ActiveWorkbook.Close False
ActiveWorkbook.Sheets("Page de garde").Select
End Sub

Tous fonctionne parfaitement sauf la ligne suivante:

'Erreur au niveau de la ligne ci dessous
msg = “” & Application.SendKeys("^v") 'Corps du message

En effet si je ne marque pas cette ligne et que j’exécute ma macro tous se passe bien puis il me reste a faire manuellement deux étapes:

[b]- sélectionne la partie corps du mail

  • Puis Ctrl+V (car l’objet Gif et déjà dans le presse papier)[/b]

Voila j’espère avoir été clair et surtout que vous pourrez m’aider.

Je me tiens à votre disposition pour tous renseigements supplémentaires.

Merci d’avance

Adeus33

Bonjour,
je n’ai plus Notes installé sur mon poste, mais est-ce qu’on ne peut pas accéder à Notes en OLE?

J’ai cru comprendre que tu tentait de lancer un “coller” en simulant les touches clavier sous l’application Notes ouverte par l’url “mailto:”. ce serait peut-être plus sûr en OLE, si c’est possible…
remarque: il faut que le focus soit sur la partie “body” pour que le coller d’une image fonctionne, alors avec les codes touches il faudrait simuler plusieurs TAB pour sortir des champs To, cc, bcc et subject.

Si tu as Notes sur ton poste, essaie d’ouvrir la base helpdesigner.nsf pour avoir un peu d’aide (dans le répertoire help du serveur)

Sur le net tu as un meta chercheur Notes, mais qui renvoie vraiement beaucoup de réponse à trier cf. url:
http://www.martinscott.com/dominosupersear…Search?OpenForm

edit: un forum français sur Domino si ça peut t’aider:
http://www.dominux.net/

edit2: c’est possible en OLE, c’est un problème récurrent à priori:
http://groups.google.com/group/comp.groupw…b15eb4817349e3c

Bonjour deltree et merci de m’avoir répondu.

Je commencais à regarder les différents liens que tu viens de me passer et ils sont très interressant.

Je pense qu’il va me falloir pas mal de temps pour comprendre (n’étant pas un grand programmeur)

En tous cas merci, je vais essayer en OLE comme tu me le conseilles. (en esperant que j’y arrive enfin!!)

Merci beaucoup

Adeus33