Détecter et Insérer un paragraphe sous un autre par VBA

rem94

XLDnaute Nouveau
Bonjour,

Alors je m'explique, j'ai un problème par VBA pour le point d'insertion de mes différents paragraphes à ajouter les uns sous les autres. Pour faire simple j'ai plusieurs userform qui doivent copié-collé plusieurs paragraphes sur un document word.

Le code que j'ai fonctionne pour un userform c'est à dire qu'il copie-colle enregistre et ferme mais lorsque qu'un autre userform copie colle par dessus il n'ajoute pas en dessous mais il remplace le texte du premier userform

Je pense que la solution serait d'ajouter un insertafter mais je ne sais pas comment l'ecrire pour que ça marche...

Voici mon bout de code :


Private Sub Génération_Click()
'Déclaration variables
Dim WordApp As Object
Dim WordDoc As Object
Dim DocumentWord As String
Dim P As String
DocumentWord = Worksheets("Menu_Tramway").Cells(15, 4).Value

Set WordApp = CreateObject("word.application") 'ouvre Word
Set WordDoc = WordApp.Documents.Open(DocumentWord) 'ouvre DOC D15
WordApp.Visible = False 'word masqué

With WordDoc.Paragraphs

'Paragraphe 1
If CheckBox2.Value = True Then
WordDoc.Range.Text = Worksheets("T_DCE_2").Range("B2")
msgbox ("Norme Ciment Added")
ElseIf CheckBox2.Value = False Then
WordDoc.Range.Text = Worksheets("T_DCE_1").Range("B12")

End If

'Paragraphe 2
If CheckBox6.Value = True Then
P = Worksheets("T_DCE_2").Range("B72").Value
.Add
.Item(.Count).Range.InsertAfter P
msgbox ("Normes Béton Added")

ElseIf CheckBox6.Value = False Then
P = Worksheets("T_DCE_2").Range("B4").Value
.Add
.Item(.Count).Range.InsertAfter P
msgbox ("Norme Béton Added")
End If

End With

WordApp.Visible = True 'affiche le doc Word
Set WordApp = Nothing
Set WordDoc = Nothing
Unload Me 'ferme l'userform
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
314 629
Messages
2 111 345
Membres
111 110
dernier inscrit
chergui