Macro VBA excel sur listbox

fb62840

XLDnaute Impliqué
Bonjour à toutes et à tous,

Voici le code qui me permet de créer à partir de la macro excel un document word, d'y placer les données aux positions des signets, qui crée un tableau et y place les éléments de la listbox.

Voilà ce pourquoi j'ai besoin de votre aide :

Avec le code ci-dessous ce qui se produit : ajout d'un tableau dans la première cellule du tableau
alors que le résultat attendu serait l'ajout d'un tableau de 2 lignes 4 colonnes sous le tableau en question.

Code:
Dim wrdApp As Object
Dim wrdDoc As Object
Dim Z As Long
Set wrdApp = CreateObject("Word.Application")
Set wrdDoc = wrdApp.Documents.Open(ActiveWorkbook.Path & "\Fichetypetest.dot")

wrdApp.ShowMe            ' pour afficher le document
wrdApp.Visible = False
wrdApp.Application.ScreenUpdating = False
wrdApp.Application.DisplayAlerts = False
Dim mytbl
Nb = WorksheetFunction.CountA(Worksheets("Base").Columns("A:A")) - 1
IDcandidat = Nb + 1

With wrdDoc
wrdDoc.Bookmarks("Nom").Range.Text = Me.TB_nom.Value
wrdDoc.Bookmarks("Prénom").Range.Text = Me.TB_prenom.Value
'etc

Set mytbl = wrdDoc.Tables.Add(Range:=wrdDoc.Bookmarks("M").Range, NumRows:=2, NumColumns:=4)
For Z = 0 To Me.LB_synthese_formation.ListCount - 1
Me.LB_synthese_formation.Selected(Z) = True
mytbl.Cell(Z, 1).Range.Text = Me.LB_synthese_formation.Column(0)
mytbl.Cell(Z, 2).Range.Text = Me.LB_synthese_formation.Column(1)
mytbl.Cell(Z, 3).Range.Text = Me.LB_synthese_formation.Column(2)
mytbl.Cell(Z, 4).Range.Text = Me.LB_synthese_formation.Column(3)
Next Z

Ce qu'il me faudrait utiliser c'est sans doute le nombre de lignes complétées dans la liste box car ce sont elles qui détermineront le nombre de tableaux à créer les uns sous les autres.

Merci pour votre aide
 

Pièces jointes

  • TEST2.zip
    43.7 KB · Affichages: 26
  • TEST2.zip
    43.7 KB · Affichages: 22
  • TEST2.zip
    43.7 KB · Affichages: 24

Discussions similaires

Réponses
14
Affichages
643

Statistiques des forums

Discussions
312 184
Messages
2 086 007
Membres
103 088
dernier inscrit
Psodam