Envoi de mail via excel

Adeus33

XLDnaute Occasionnel
Bonjour tous le monde

Je cherche a envoyé un onglet d'un classeur excel via lotus notes, mais pas en fichier joint , j'aimerai faire un copier coller des cellules (dans mon cas cellules de A1 à H26 de la Feuil3)

J'ai déjà réussi a envoyé un mail à l'aide du code suivant:
Code:
Sub EnvoiUnMail()
Dim MailAd As String
Dim msg As String
Dim Subj As String
Dim URLto As String
Dim MonMessage As Object

MailAd = Sheets('Feuil2').Range('B3')'emplacement de l'adresse mail
Subj = Sheets('Feuil2').Range('B4')'emplacement du titre du mail
msg = Sheets('Feuil2').Range('B5')'Corp du mail

URLto = 'mailto:' & MailAd & '?subject=' & Subj & '&body=' & msg
ActiveWorkbook.FollowHyperlink Address:=URLto
End Sub

Mon but est donc de mettre le cellules de A1 à H26 de la Feuil3 en Corp du mail.

Sachant que je n'ai pas réussi, j'ai eu l'idée de transformer l'onglet en question (Feuil3) en format HTML de manière a pouvoir l'incorporer dans le mail mais je n'ai pas réussi et c'est pour cela que je reviens vers vous en esperant qu'une ame charitable m'aide a trouver la solution.

Je me tiens a votre disposition pour tous renseignement supplémentaires.


Adeus33
 

Adeus33

XLDnaute Occasionnel
Bon et bien je vois que ce post n'a pas eu le succes que j'esperais.

Je continue quand meme a attendre.....

Je suis pret a passer par tous les chemins possibles pour arriver a envoyer ce mail (donc vous pouvez proposer ce que vous voulez lol).

Adeus33
 

ERIC S

XLDnaute Barbatruc
Bonjour

JE N'Y CONNAIS RIEN

mais si tu as réussi avec

msg = Sheets('Feuil2').Range('B5')

ne peux-tu pas dans un premier temps essayer un truc du genre:

sheets('feuil3').range('A1:H26').select
msg=''
set C as cell
for each C in selection
msg=msg & ' ' & C.value
next

il faudrait tester (plus tard) le retout ligne aux changements de ligne de la zone XL

A+
 

Adeus33

XLDnaute Occasionnel
Bonjour ERIC S et merci de t'interesser a mon problème.

J'ai essayé mais il me marque une erreur au niveau de la ligne suivante:
Code:
set C as cell

Sinon en fouillant dans les archives j'ai trouvé un lien qui permet a priori d'envoyer un mail en copiant des cellules dans le corp du text, le probleme est qu'il ne fonctionne pas sous lotus et je suis incapable de le modifier:

Code
Code:
Cette procédure envoie une plage de données :
A ) sans formule
B ) Sans format
C ) La plage d'origine se retrouve à partir de la cellule A1 dans la feuille du fichier envoyé.
D ) Renomme la feuille et la plage de cellule selon ton application.
E) Enlève les objets de la feuille envoyée,
F) Enlève le code de la feuille envoyée s'il existe

-----------------------
Sub EnvoiPlageDonnéeParCourriel()

Dim Plage As Range, T As Variant, A As Long
Dim Shap As Object, B As Integer

Application.ScreenUpdating = False
With Worksheets('Feuil1')
Set Plage = Worksheets('feuil1').Range('A1:A10')
T = Plage
.Copy
End With

A = Plage.Rows.Count
B = Plage.Columns.Count

With ActiveWorkbook
With .VBProject.VBComponents(ActiveSheet.Name).CodeModule
.deletelines 1, .countoflines
End With
With .ActiveSheet
.Cells.Clear
.Range(Cells(1, 1), Cells(A, B)) = T
For Each Shap In .Shapes
Shap.Select Replace:=False
Next
Selection.Delete
End With
SendKeys '(%{E})', False
.SendMail Recipients:='Destinataire@Serveur', Subject:='Test'
.Close savechanges:=False
End With
Set Plage = Nothing: Set Shap = Nothing

End Sub

Lien :
Ce lien n'existe plus
(enfin un peu plus bas)
Il doit fonctionner sous outlook

Voila si quelqu'un est capable de le modifier pour envoyer les info a l'aide de notes ca serait cool.

Adeus33
 

Adeus33

XLDnaute Occasionnel
Re ERIC S

En fait j'avais déjà fais l'essai
et cette fois ci il me marque une erreur sur la dernière ligne du code
Code:
ActiveWorkbook.FollowHyperlink Address:=URLto

Voili voilou
Je reste a ta disposition si tu as d'autres idées (et j'espere que tu en as plein ;) )


Adeus33
 

Shock

XLDnaute Occasionnel
Adeus33 écrit:
J'ai déjà réussi a envoyé un mail à l'aide du code suivant:
Code:
Sub EnvoiUnMail()
Dim MailAd As String
Dim msg As String
Dim Subj As String
Dim URLto As String
Dim MonMessage As Object

MailAd = Sheets('Feuil2').Range('B3')'emplacement de l'adresse mail
Subj = Sheets('Feuil2').Range('B4')'emplacement du titre du mail
msg = Sheets('Feuil2').Range('B5')'Corp du mail

URLto = 'mailto:' & MailAd & '?subject=' & Subj & '&body=' & msg
ActiveWorkbook.FollowHyperlink Address:=URLto
End Sub

Salut Adeus, Eric,

pourquoi ne pas mettre simplement :
msg = Sheets('Feuil2').Range('B5').Value
...je n'ai pas essayé, mais c'est peut etre valable?
ou meme pkoi pas :
Range('B5').Text

Si ca peut t'aider
 

Adeus33

XLDnaute Occasionnel
Bonjour Shock

En fait j'arrive a envoyé un mail avec le code que tu as repris.
Le probleme est que je ne souhaite pas envoyer que le contenu d'une seule cellule en tant que corp du message mais une selection de cellule (A1:H26 de la feuil3)

Sinon pour une seule cellule, ca fonctionne parfaitement.

sinon j'avais pensé transformer le dernier onglet en format HTML ou JPEG de manière ensuite a coller ce fichier dans le corp du mail, mais comme tu peux t'en douté j'ai beaucoup d'idée mais alors pour les mettre en oeuvre c'est une autre histoire.

N'hésité pas a me donner d'autres idée de solution, je prend tous lol.


Adeus33
 

ERIC S

XLDnaute Barbatruc
re

j'avais pas vu ta dernière remarque

je ne vois pas de différence sur le contenu de msg si tu lis une cellule ou un groupe (avec le for-next)
à voir peut-être sur la longueur de msg

essaie en bornant A1:B2 par exemple

A+
 

Adeus33

XLDnaute Occasionnel
Re

ERIC S: j'ai essayé et cela fonctionne, en fait il y avait un bouton dans ma selection et c'est donc pour cela qu'il me marquait une erreur

Le probleme est que sur ma feuille j'ai un graphique, donc cette méthode ne vas pas fonctionner, en plus comme tu me l'avais signalé il ne garde aucune mise en page.
Mais bon au moins il a copié le contenu de plusieur cellule.

Je pense qu'en passant par un changement de format (passage en Jpeg pour ensuite le coller)
ca serait plus simple en plus ca garderai le meme format.

Est ce que quelqu'un sait comment faire ca?

Adeus33
 

Shock

XLDnaute Occasionnel
re,
regarde dans l'aide VBa la méthode Cut, tu peux peut-etre récupérer tes donnés dans le presse-papiers, puis les coller ensuite dans le Corp du message?
...enfin j'sais pas j'propose!! ;)
(ca m'énerve ton truc en fait!! :huh:
 

Adeus33

XLDnaute Occasionnel
Lol shock oui a moi aussi ca m'enerve lol

Considere ca comme un challenge enfin vous pouvez tous considérer ca comme un challenge lol :)

Je vais essayé cette méthode mais sachant que je ne suis pas super fort en VBA .....

Je vous tiens au courant si jy arrive.

Mais vous pouvez quand meme me donner d'autres conseils ;)

Adeus33
 

Discussions similaires

Réponses
2
Affichages
303

Statistiques des forums

Discussions
312 492
Messages
2 088 930
Membres
103 984
dernier inscrit
maliko67