berge.nico
XLDnaute Nouveau
Bonjour,
Pour des besoins professionnels, j'aimerais envoyer par mail outlook une plage de cellule.
Contrairement à toutes les méthode déja présente sur le net, j'aimerais que ma plage de cellule excel se colle en format plaintext.
Plus clairement, lorsque on utilise les méthodes existantes, la plage de cellule est introduite dans le mail en gardant la mise en forme excel (lignes et colonnes), ce qui rend le texte peu flexible à la modification.
Ainsi, je cherche la fonction qui me permette, en cliquant sur un bouton, de copier la plage et dans, le body du mail, de la coller en plaintext.
Voci l'état actuel de mon code :
'GENERATION DU MAIL******************************************
Dim rng As Range
Dim outlook As Object
Dim mail As Object
Set rng = Range("B2:H107")
With Application
.EnableEvents = False
.ScreenUpdating = False
End With
On Error Resume Next
Range("B2:H107").Copy
Set outlook = CreateObject("Outlook.Application")
Set mail = outlook.createitem(0)
On Error Resume Next
With mail
.To = TextBoxmailcontact.Text
.Subject = "Proposition de couverture"
.body = rng
.Display
End With
With Application
.EnableEvents = False
.ScreenUpdating = False
End With
Set outlook = Nothing
Set mail = Nothing
End Sub
Comme vous pouvez le voir, j'utilise la méthode rangetoHTML de Ron de Bruin mais le résultat ne me convient pas car je voudrais pouvoir modifier le texte comme si je venais de le copier d'un document word (adieu les lignes et colonnes induites)
Si vous voulez des précisions, n'hésitez pas !
NICO
Pour des besoins professionnels, j'aimerais envoyer par mail outlook une plage de cellule.
Contrairement à toutes les méthode déja présente sur le net, j'aimerais que ma plage de cellule excel se colle en format plaintext.
Plus clairement, lorsque on utilise les méthodes existantes, la plage de cellule est introduite dans le mail en gardant la mise en forme excel (lignes et colonnes), ce qui rend le texte peu flexible à la modification.
Ainsi, je cherche la fonction qui me permette, en cliquant sur un bouton, de copier la plage et dans, le body du mail, de la coller en plaintext.
Voci l'état actuel de mon code :
'GENERATION DU MAIL******************************************
Dim rng As Range
Dim outlook As Object
Dim mail As Object
Set rng = Range("B2:H107")
With Application
.EnableEvents = False
.ScreenUpdating = False
End With
On Error Resume Next
Range("B2:H107").Copy
Set outlook = CreateObject("Outlook.Application")
Set mail = outlook.createitem(0)
On Error Resume Next
With mail
.To = TextBoxmailcontact.Text
.Subject = "Proposition de couverture"
.body = rng
.Display
End With
With Application
.EnableEvents = False
.ScreenUpdating = False
End With
Set outlook = Nothing
Set mail = Nothing
End Sub
Comme vous pouvez le voir, j'utilise la méthode rangetoHTML de Ron de Bruin mais le résultat ne me convient pas car je voudrais pouvoir modifier le texte comme si je venais de le copier d'un document word (adieu les lignes et colonnes induites)
Si vous voulez des précisions, n'hésitez pas !
NICO