user_mobilelogo

Pour tout connaître sur Word
Nouvelle version !

600 pages !

9,80 € 

En savoir plus.

Avec une macro, bien entendu.

Voici un exemple de macro pour un document exemple qui contient :

  • Un contrôle de contenu de liste déroulante, avec la balise nommée "liste1".
    Cette liste déroulante contient les noms de continents.

  • Un contrôle de contenu de liste déroulante, avec la balise nommée "liste2". Cette liste est vide et se remplira automatiquement avec les pays, lors du choix dans la liste 1.

La macro devra être copiée et collée dans le VBE, ThisDocument. (Voyez ici si nécessaire). Attention ! Ne changez pas le nom des macros !

Lorsque vous choisirez un continent dans la première liste, la liste des pays concernés sera disponible dans la seconde liste.

Dim Choix As String
Private Sub Document_ContentControlOnEnter(ByVal CC As ContentControl)
If CC.Tag = "liste1" Then Choix = CC.Range.Text
End Sub

Private Sub Document_ContentControlOnExit(ByVal CC As ContentControl, Cancel As Boolean)
Dim i As Long, listes_pays As String
With CC
  If .Tag = "liste1" Then
    If Choix = .Range.Text Then Exit Sub
    Select Case .Range.Text
      Case "Europe"
        listes_pays = "France,Italie,Espagne,Grèce,Portugal"
      Case "Amérique"
        listes_pays = "États-Unis,Canada,Argentine,Mexique,Brésil"
      Case "Afrique"
        listes_pays = "Cameroun,Sénégal,Gabon,Côte d'Ivoire"
    Case "Asie"
        listes_pays = "Japon,Chine,VietNam,Inde"
      Case Else
        .Type = wdContentControlText
        .Range.Text = ""
        .Type = wdContentControlDropdownList
    End Select
    With ActiveDocument.SelectContentControlsByTag("liste2")(1)
      .DropdownListEntries.Clear
      For i = 0 To UBound(Split(listes_pays, ","))
        .DropdownListEntries.Add Split(listes_pays, ",")(i)
      Next
      .Type = wdContentControlText
      .Range.Text = ""
      .Type = wdContentControlDropdownList
    End With
  End If
End With
End Sub
 

 

Statistiques

Aujourd'hui201
Hier2776
Cette semaine2977
Ce mois19012
Total depuis 200412843576

8
visiteurs actuellement en ligne

9 mars 2021