Problème de macro

robchlo

XLDnaute Nouveau
Bonjour à tous,

J'ai récupéré sur l'ordinateur individuel une macro pour l'automatisation des courriels dans excel et elle ne marche pas, pouvez vous m'aider à la réparer. voici la macro :

Sub envoiMail()
adr = Range("p1")
suj = Range("p2")
msg = Range("a1:f33")
u="mailto:"&adr&"?subject="&suj&"&body="&msg
ActiveWorkbook.FollowHyperlink Adress:=u
End Sub

Merci pour vos réponses
 

Gael

XLDnaute Barbatruc
Re : Problème de macro

Bonjour Robchlo, bonjour PierreJean,

D'accord avec mon ami PierreJean, c'est la structure de msg qui pose problème. Essaye de définir msg avec le code suivant et ça devrait marcher:

Code:
msg = ""
For l = 1 To 33
    For c = 1 To 6
    msg = msg & Cells(l, c) & " "
    Next c
msg = msg & "%0A"
Next l

Nota: "%0A" insère un retour à la ligne

@+

Gael
 

ledzepfred

XLDnaute Impliqué
Re : Problème de macro

bonjour à tous

si on "aere" un peu le code en remplaçant "&" par " & ", cela donne :
u="mailto:" & adr & "?subject=" & suj & " & body=" & msg

du coup en rouge ya un souci

Je dirai donc : u="mailto:" & adr & "?subject=" & suj & "&body=" & msg

a+
 
Dernière édition:

ledzepfred

XLDnaute Impliqué
Re : Problème de macro

re...

j'ai raconté des aneries, pardon!!!

j'ai testé et ce code fonctionne :

u = "mailto:" & adr & "?subject=" & suj & "&body=" & msg & ""
ActiveWorkbook.FollowHyperlink Address:=u

Notes que la syntaxe d'address était eronné dans ton message (prends 2 d)

a+
 

robchlo

XLDnaute Nouveau
Re : Problème de macro

Merci à tous, car maintenant la macro fonctionne correctement (automatisation de courriels via excel). Sauf que le message que je veux mettre dans le corp du mail est un tableau qui ce trouve entre A1 et F33; quel est le code exacte à la place de :
msg = Range("a1:f33")

Merci d'avance
 

robchlo

XLDnaute Nouveau
Re : Problème de macro

Voici la macro entiere et lorsque je la lance j'ai une erreur (erreur d'éxecution "13" - incompatible de type) et la ligne

msg = msg & Cells(l, c) & " "

est en jaune.



Sub envoiMail()
adr = Range("p1")
suj = Range("p2")
msg = ""
For l = 1 To 33
For c = 1 To 6
msg = msg & Cells(l, c) & " "
Next c
msg = msg & "%0A"
Next l
u = "mailto:" & adr & "?subject=" & suj & "&body=" & msg & ""
ActiveWorkbook.FollowHyperlink Address:=u
End Sub
 

Gael

XLDnaute Barbatruc
Re : Problème de macro

Re,

Il se peut selon le contenu de tes cellules que la taille de la zone msg devienne trop importante, après quelques essais, je ne peut pas dépasser la longueur de 620 caractères.

Le message d'incompatibilité de type peut se produire si tu as une cellule qui contient une valeur d'erreur (#NA, #NOM...)

Sinon, chez moi, cela fonctionne très bien.

Si tu as toujours des problèmes, envoie un extrait de ton fichier.

@+

Gael
 

robchlo

XLDnaute Nouveau
Re : Problème de macro

Merci Gael,

Effectivement cela fonctionne, mais malheureusement j'ai toujours mon problème d'envois de mail hebdomadaire et automatique via excel, je joins un fichier avec le tableau (j'aimerai garder le format) que je souhaite diffuser chaque jour à environ 20 mails différents, quel est la solution svp?

@+

Hervé
 

Pièces jointes

  • essais mail.xls
    16.5 KB · Affichages: 113

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 305
Messages
2 087 084
Membres
103 459
dernier inscrit
Arnocal