patricktoulon
XLDnaute Barbatruc
Bonjour a tous
je souhaiterait comprendre certaine fonctions dans le code mail avec outlook
notament les range paragraphe move etc ....
dans cet exemple j'ai un soucis avec move et insertafter la fin du message atterrit dans le tableau
si quelqu'un avait la gentillesse de m'expliquer ça serait sympatoche
merci d'avance
je souhaiterait comprendre certaine fonctions dans le code mail avec outlook
notament les range paragraphe move etc ....
dans cet exemple j'ai un soucis avec move et insertafter la fin du message atterrit dans le tableau
si quelqu'un avait la gentillesse de m'expliquer ça serait sympatoche
merci d'avance
VB:
Option Explicit
Sub test4()
Dim OutLK As Object, email As Object, wdDoc As Object, erreur%, rng As Object, plage(1 To 2) As Range, texte$(1 To 2)
Dim TextePoli$, olMailItem&, textebyebye$
With Sheets(1)
Set plage(1) = .Range("A1:F10")
Set plage(2) = .Range("C14:E22")
TextePoli = "Bonjour veuillez trouver ci joint les tableaux de relevé et synthèses"
texte(1) = "Relevé d'informations des activités et incidents"
texte(2) = "synthèse de la journée "
textebyebye = "Vous souhaitant bonne réception" & vbNewLine & "Patrick:Responsable 16 ans et plus"
End With
'On Error Resume Next 'désactivation routine d'erreur
erreur = False
'Assignation des applications Outlook ,de l'objet email et du body de l'email en tant que document Word
Set OutLK = CreateObject("outlook.application")
Set email = OutLK.CreateItem(olMailItem)
With email
'....... remplissage sujet, objet, et adresse
.To = "balabla@turlututu.fr"
.CC = "trucbidule@chose.fr"
.Subject = "relevé d'information et tableaux "
.BodyFormat = 3 '2=html -- 3=olFormatRichText
'....... corps du mail
.Display
Set wdDoc = email.GetInspector.WordEditor
Set rng = wdDoc.Range(0, 0)
' Insertion avant la copie du tableau
rng.InsertAfter TextePoli & vbNewLine & vbNewLine 'introduction
'-------------------------------------------------------------------------
'ajout du titre tableau 1
rng.InsertAfter texte(1) & vbNewLine 'titre tableau 1
'ok
'-------------------------------------------------------------------------
'ajout du tableau 1
Set rng = rng.Paragraphs.Add().Range 'on ajoute un nouveau paragraphe
'
plage(1).Copy ' Copie du tableau 1
'
' collage au choix en image ou tableau ou texte ou par (defaut tableau)
rng.Paste 'en tableau par defaut
'rng.PasteSpecial , DataType:=1 'en tableau
'rng.PasteSpecial , DataType:=2 'en texte "
'rng.PasteSpecial , DataType:=4 'en metafichier "format WMF"
rng.Move 1, 1 '????????? ' pas tres bien compris ce que ça veut dire exactement )???????
'tableau 1 Ok
'-------------------------------------------------------------------------
'ajout du titre tableau 2
Set rng = rng.Paragraphs.Add().Range
rng.InsertAfter texte(2) & vbNewLine
'rng.Move X, y 'tel!! est la question ????????????
'-------------------------------------------------------------------------
'-------------------------------------------------------------------------
'ajout du tableau 2
Set rng = rng.Paragraphs.Add().Range
' Copie du tableau 2 et collage dans le newparagraphe .range
plage(2).Copy ' Copie du tableau2
'
' collage au choix au choix en image ou tableau
rng.Paste ' en tableau
'rng.PasteSpecial , DataType:=wdPasteMetafilePicture 'en metafichier "format WMF"
'rng.Move X, y 'tel!! est la question ????????????
'-------------------------------------------------------------------------
'-------------------------------------------------------------------------
'pied de page
'Set rng = rng.Paragraphs.Add().Range 'on ajoute un nouveau paragraphe
rng.InsertAfter textebyebye & vbNewLine & "Cordialement" & vbNewLine
rng.Move 1, 200 ' pas tres bien compris ce que ça veut dire exactement )
'ici ca va plus !! il est soit dans la table 2 soit pas du tout
'-------------------------------------------------------------------------
'.Send 'Envoyer le message
'If Err.Number <> 0 Then erreur = True
End With
'destruction des objets
Set OutLK = Nothing: Set email = Nothing: Set wdDoc = Nothing
End Sub