Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Lorsque vous utilisez des contrôles de contenu avec des blocs de construction, vous pouvez aider les utilisateurs en indiquant le contenu qu’ils peuvent insérer et en limitant leurs choix. Pour ce faire, vous pouvez filtrer la liste des blocs de construction affichés pour un contrôle de contenu. Pour filtrer une liste de blocs de construction pour un contrôle de contenu, vous utilisez la propriété BuildingBlockType pour le contrôle de contenu. Vous pouvez filtrer davantage la liste des blocs de construction en définissant la propriété BuildingBlockCategory pour le contrôle de contenu.
Vous pouvez filtrer la liste des blocs de construction pour un contrôle de contenu lorsque vous créez ce contrôle. Mais vous pouvez également procéder par programme en prenant comme critère la position du curseur ou la valeur d’un autre contrôle de contenu. Vous avez besoin au départ d’une galerie de blocs de construction personnalisée. Pour savoir comment créer cette galerie, voir Créer une galerie de blocs de construction personnalisée.
Exemple 1
L'exemple suivant montre comment filtrer une liste de blocs de construction en utilisant comme critère une galerie spécifique.
Remarque
[!REMARQUE] Avant d'exécuter le code de cette rubrique, vous devez exécuter le code de la rubrique « Créer une galerie de blocs de construction personnalisée ».
Sub CreateFilteredContentControl_SampleOneA()
Dim objCC As ContentControl
Set objCC = ActiveDocument.ContentControls.Add( _
wdContentControlBuildingBlockGallery, Selection.Range)
objCC.BuildingBlockType = wdTypeCustom1
End Sub
Pour restreindre encore la liste, vous pouvez également filtrer les blocs de construction en spécifiant une catégorie dans la galerie. L'exemple suivant montre comment inclure uniquement les blocs de construction appartenant à une catégorie donnée de la galerie spécifiée.
Sub CreateFilteredContentControl_SampleOneB()
Dim objCC As ContentControl
Set objCC = ActiveDocument.ContentControls.Add( _
wdContentControlBuildingBlockGallery, Selection.Range)
objCC.BuildingBlockType = wdTypeCustom1
objCC.BuildingBlockCategory = "Tertiary Headings"
End Sub
Exemple 2
Pour filtrer une liste de blocs de construction en fonction de la position du curseur, vous devez utiliser l'événement ContentControlOnEnter. Par exemple, si vous avez un contrôle de contenu appelé Report Type (Type de rapport) pouvant prendre la valeur « financial » (financier) ou « marketing », vous pouvez définir un contrôle de contenu de bloc de construction affichant la liste des avertissements possibles. Ce contrôle affichera tous les avertissements si le type de rapport n'est pas défini ou uniquement le sous-ensemble approprié si la propriété est définie. L'exemple suivant montre comment filtrer la liste des blocs de construction pour un contrôle de contenu en prenant comme critère la valeur d'un autre contrôle de contenu du document.
Private Sub Document_ContentControlOnEnter(ByVal ContentControl As ContentControl)
Dim objCC As ContentControl
Dim objType As ContentControl
Set objCC = ContentControl
Set objType = ActiveDocument.ContentControls.Item("Report Type")
If objCC.Title = "Disclaimer" Then
Select Case objType.Range.Text
Case "Financial"
objCC.BuildingBlockType = wdTypeCustom1
objCC.BuildingBlockCategory = "Financial Disclaimers"
Case "Marketing"
objCC.BuildingBlockType = wdTypeCustom1
objCC.BuildingBlockCategory = "Marketing Disclaimers"
End Select
End If
End Sub
Voir aussi
Assistance et commentaires
Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.