vtim806
Messages postés2Date d'inscriptionvendredi 5 juin 2009StatutMembreDernière intervention 8 juin 2009
-
5 juin 2009 à 22:59
c148270
Messages postés303Date d'inscriptionmercredi 12 janvier 2005StatutMembreDernière intervention 3 octobre 2013
-
8 juin 2009 à 12:14
Bonsoir,
J'insère des données de cellules Excel dans le tableau d'un document Word. J'insère:
<li> dans la ligne 1 de mon tableau Word la donnée contenue en A1 d'Excel,
</li><li>en ligne 2 la donnée contenue en A2</li><li>en ligne 3 la donnée contenue en A3</li>Les données passent bien d'Excel à mon tableau Word. Ce que je souhaite, c'est que lorsque la cellule A1, A2 ou A3 est vide alors soit supprimée dans le tableau Word la ligne 1,2 ou 3.
Pour être plus clair, si A2 est vide, je souhaiterai supprimer la ligne 2 du document Word.
Je me suis lancé dans le code suivant qui tourne (il assure le transfert des données des cellules Excel vers les lignes du tableau Word) mais ne supprime pas la ligne du tableau Word si la cellule Excel est vide.
Sub fiche()
Dim WordApp As Word.Application
Dim WordDoc As Word.Document
Set WordApp = CreateObject("word.application")
Set WordDoc = WordApp.Documents.Open("C:\tableau.docx") 'ouvre le document Word
'transfert des données des cellules A1, A2 et A3 dans les lignes 1,2 et 3 du tableau Word.
WordDoc.Tables(1).Rows(1).Range.Text = Range("A1")
WordDoc.Tables(1).Rows(2).Range.Text = Range("A2")
WordDoc.Tables(1).Rows(3).Range.Text = Range("A3")
If WordDoc.Tables(1).Rows(1).Range.Text = "" Then WordDoc.Tables(1).Rows(1).Delete
If WordDoc.Tables(1).Rows(2).Range.Text = "" Then WordDoc.Tables(1).Rows(2).Delete
If WordDoc.Tables(1).Rows(3).Range.Text = "" Then WordDoc.Tables(1).Rows(3).Delete
WordDoc.SaveAs ("C:\tableau_nouveau.docx")
End Sub
Alors si vous avez des idées ce dont je ne doutes pas, merci pour votre aide