VBA - TabIndex pour sélectionner des contrôles

Résolu

Bonjour,

Je bloque depuis un certain temps sur l'utilisation de la propriété TabIndex des contrôles afin d'effectuer une action seulement sur certains contrôles.

Dans mon cas, je cherche à remettre à zéro certains contrôles et ce, grâce à la propriété Tabindex :

Dim CTRL As Control

For Each CTRL In Me.Controls
    If TypeOf CTRL Is MSForms.TextBox Or TypeOf CTRIL Is MSForms.ComboBox And CTRL.TabIndex <= 4 Then
       CTRL.Value = ""
    End If
Next CTRL

Cependant, j'obtiens une erreur "Membre introuvable" à cause de l'utilisation de TabIndex.

Avez-vous une solution alternative ou est-ce que je m'y prend mal pour faire cela ?

Merci par avance.

Kiwish

2 réponses

  1. Contributeur

    Bonjour,

    essai ceci:

    Option Explicit
    Private Sub CommandButton1_Click()
    Dim CTRL As Control
    For Each CTRL In Me.Controls
        If TypeOf CTRL Is MSForms.TextBox Then
           If CTRL.TabIndex <= 4 Then
           CTRL.Value = ""
           End If
        End If
    Next CTRL
    End Sub
    

    Voilà


    1. Merci beaucoup Le Pivert, 

      Un peu bête de ma part de ne pas avoir pensé à cette solution simple plus tôt.

      Pour ma culture, pourrais-tu m'expliquer l'intérêt ici de la première ligne ?

      Merci encore.

      Kiwish