Boucle Sur listview Pour changer le Font

Bonjour à tous,

De l'aide encore

comment faire un boucle sur les 9 listviews pour le code suivant

With ListView9

    If Me.CboPolice = "Times New Roman" Then
        .Font.Name = Me.CboPolice
        .Font.Size = 10
    ElseIf Me.CboPolice = "Monotype Corsiva" Then
        .Font.Name = Me.CboPolice
        .Font.Size = 12
     ElseIf Me.CboPolice = "Tahoma" Then
        .Font.Name = Me.CboPolice
        .Font.Size = 10
     ElseIf Me.CboPolice = "Verdana" Then
        .Font.Name = Me.CboPolice
        .Font.Size = 8
     ElseIf Me.CboPolice = "Arial Narrow" Then
        .Font.Name = Me.CboPolice
        .Font.Size = 11
    End If

End With

merci d'avance

Bonsoir,

En créant une procédure, avec la listview comme paramètre.

Cf proposition PJ à tester.

Bonne soirée.

Bouben

Merci Mr bouben Pour Votre Réponse ca fait l'affaire

Juste j'aimerai comprendre le boucle sur les listview se fait par ce code

For Each oControl In Controls
        If TypeName(oControl) = "ListView4" Then
            Init oControl
        End If
    Next oControl

et si je veux ajouter une autre listview juste je change la ligne

 If TypeName(oControl) = "ListView4" Then

Par

 If TypeName(oControl) = "ListView5" Then

Une autre fois merci pour votre aide

Bonsoir,

quelques explications complémentaires :

- la procédure

Private Sub Init(poLvw As ListView)

Cette procédure est à supprimer. Elle sert uniquement à alimenter toutes les listview avec valeurs "bidon" pour permettre de voir le résultat.

Dans le fichier réel, les listview sont alimentées, j'imagine !

De même la boucle dans la procédure

UserForm_Initialize()

, qui permet d'appeler la procédure ci-dessus sur toutes les listview

- la procédure

Private Sub ModifFont(poListView As ListView)

Cette procédure modifie la font de la liste passée en paramètre

J'ai repris tel quel la procédure initiale

- la boucle

For Each oControl In Controls

on boucle sur tous les contrôles du formulaire ("Controls" contient tous ces contrôles).

Dans cet objet "Controls", on a donc tout ce qui est sur le UserForm (les labels, les textbox, les listviews, etc)

Dans notre cas, seul les Listview nous intéressent.

La fonction VBA "TypeName" renvoie le type de contrôle, et les ListView ont le type "ListView4" (pourquoi 4 ? bonne question, mais rien à voir avec le nombre de listview).

Pour bien comprendre, ci-joint une nouvelle version qui modifie la font sur les ListView (pour la peine, j'en ai créé 7) et aussi sur les textbox.

Voilà pour les explications, en espérant que ce soit assez clair

Bonne soirée

Bouben

Bonjour et merci pour votre explication

j'ai bien compris juste cette petite ligne qui contient "ListView4" qui m'a été difficiles à comprendre due au numéro 4

et mille merci

Rechercher des sujets similaires à "boucle listview changer font"