Mettre a jour un liste déroulant WORD via un fichier EXCEL

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

chaelie2015

XLDnaute Accro
Bonjour forum

Je souhaite alimenter (mettre a jour) ma liste déroulante dans un fichier WORD via une liste dans un fichier EXCEL.

EXEMPLE : Si je rajoute une donnée dans la liste (colonne A) de fichier EXCEL, cette donnée s’ajoutera automatiquement dans la liste déroulante de WORD.

Merci
 

Pièces jointes

Bonjour chaelie2015,

Voyez ces fichiers zippés et la macro :
Code:
Sub ListeWord()
Dim a, o As Object, i&
With Feuil1 'CodeName
    a = .Range("A2", .Range("A" & Rows.Count).End(xlUp))
End With
Set o = CreateObject(ThisWorkbook.Path & "\charlie liste deroulante.docx") 'à adapter
o.Parent.Visible = True
With o.ContentControls(1)
    .DropdownListEntries.Clear 'RAZ
    For i = 1 To UBound(a)
        .DropdownListEntries.Add a(i, 1)
    Next
End With
AppActivate o.Parent.Caption
End Sub
A+
 

Pièces jointes

Dernière édition:
Bonjour chaelie2015,

Voyez ces fichiers zippés et la macro :
Code:
Sub ListeWord()
Dim a, o As Object, i&
With Feuil1 'CodeName
    a = .Range("A2", .Range("A" & Rows.Count).End(xlUp))
End With
Set o = CreateObject(ThisWorkbook.Path & "\charlie liste deroulante.docx") 'à adapter
o.Parent.Visible = True
With o.ContentControls(1)
    .DropdownListEntries.Clear 'RAZ
    For i = 1 To UBound(a)
        .DropdownListEntries.Add a(i, 1)
        .DropdownListEntries = a
    Next
End With
AppActivate o.Parent.Caption
End Sub
A+
Re
merci pour le fichier
J’ai un message d’erreur d’exécution 438
Propriété ou méthode non gérée par cet objet

.DropdownListEntries = a


a+
 
Re,

Oui j'avais mis cette instruction pour tester, je corrige mon post #2.

A+
Re
je souhaite généraliser ton code c-a-d
dans le fichier Word j'ai plusieurs liste déroulantes je souhaite les alimenter par le fichier excel chaque colonne sa liste déroulante Word
colonne A pour la liste déroulante SITE dans le Word
colonne C pour la liste déroulante NOM dans le Word
ETC.......
a+
 
Bonjour chaelie2015,

Il suffit d'ajouter une boucle pour étudier les zones/contrôles :
Code:
Sub ListesWord()
Dim P As Range, n As Byte, o As Object, i&
With Feuil1 'CodeName
    Set P = Union(.Range("A2", .Range("A" & .Rows.Count).End(xlUp)), _
        .Range("C2", .Range("C" & .Rows.Count).End(xlUp)), _
            .Range("E2", .Range("E" & .Rows.Count).End(xlUp)))
End With
Set o = CreateObject(ThisWorkbook.Path & "\charlie liste deroulante.docx") 'à adapter
o.Parent.Visible = True
For n = 1 To P.Areas.Count
    With o.ContentControls(n) 'autant de contrôles que de zones
        .DropdownListEntries.Clear 'RAZ
        For i = 1 To P.Areas(n).Count
            .DropdownListEntries.Add P.Areas(n)(i).Text
        Next
    End With
Next
AppActivate o.Parent.Caption
End Sub
Fichier (2).

A+
 

Pièces jointes

Bonjour chaelie2015,

Il suffit d'ajouter une boucle pour étudier les zones/contrôles :
Code:
Sub ListesWord()
Dim P As Range, n As Byte, o As Object, i&
With Feuil1 'CodeName
    Set P = Union(.Range("A2", .Range("A" & .Rows.Count).End(xlUp)), _
        .Range("C2", .Range("C" & .Rows.Count).End(xlUp)), _
            .Range("E2", .Range("E" & .Rows.Count).End(xlUp)))
End With
Set o = CreateObject(ThisWorkbook.Path & "\charlie liste deroulante.docx") 'à adapter
o.Parent.Visible = True
For n = 1 To P.Areas.Count
    With o.ContentControls(n) 'autant de contrôles que de zones
        .DropdownListEntries.Clear 'RAZ
        For i = 1 To P.Areas(n).Count
            .DropdownListEntries.Add P.Areas(n)(i).Text
        Next
    End With
Next
AppActivate o.Parent.Caption
End Sub
Fichier (2).

A+
Bonjour JOB75
j'ai trouvé un autre souci dans l’exécution , c'est les doublons dans la liste word ??
il n'accepte pas les doublons ?????
a+
 
Bonjour JOB75
j'ai trouvé un autre souci dans l’exécution , c'est les doublons dans la liste word ??
il n'accepte pas les doublons ?????
a+


Bonjour,
Je cherche à utiliser cette macro dans un formulaire word , mais ...
L'ajout de listes alimentée par un tableau excel ne fonctionne pas en cas de doublon dans le tableur excel, j'ai aussi un problème lorsque j'ajoute des champs 'Date' et des 'zones de texte' au lancement de la macro je reçois un message d'erreur d'execution '6189'

Merci pour votre aide
 
Bonjour supercopain, bienvenue sur XLD,

chaelie2015 a posé la même question, je n'ai pas répondu car il est évident qu'il suffit d'éliminer les doublons.

A+

Bonjour,
merci pour votre réponse
Dans mon formulaire je souhaite ajouter des autre contrôle tel que "insérez une image" ou "choisir une date" ou alors des simple champ pour du texte.
j'ai essayé avec l'ajout de colonne dans l'Excel et la macro mais j'ai toujours le même message d'erreur ".DropdownListEntries.Clear"

Merci beaucoup pour votre aide
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
XL 2016 liste
Réponses
10
Affichages
320
  • Question Question
Microsoft 365 agrandir la liste
Réponses
21
Affichages
380
Retour