Bonjour le forum,

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Private Sub T_Add_CBSite_Change()
    Private Sub T_Add_CBSite_Change()
    Dim LT As Range
 
    Set WbO = WbT.Sheets(2)
    Set t = WbO.ListObjects("t_cc")
 
    If T_Add_CBSite.Value = "BIC" Then
        T_Add_CBP4.Visible = False
        T_Add_LBP4.Visible = False
        Call T_CBBIC_Init
    Else
        T_Add_CBBIC.Clear
        T_Add_LBBIC.Visible = False
        T_Add_CBBIC.Visible = False
        T_Add_CBP4.Visible = True
        T_Add_LBP4.Visible = True
        Call T_CBP4_Init
        Call T_CBP5_Init
    End If
 
    Set LT = t.DataBodyRange.Find(T_Add_CBSite, lookat:=xlWhole)
 
    T_Add_TBCC.Text = t.DataBodyRange(LT.Row, 2)
End Sub
End Sub
Voici le code posant problème, et la ligne sur laquelle l'erreur est signalée est :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
T_Add_TBCC.Text = t.DataBodyRange(LT.Row, 2)
Et c'est lié à la variable LT. Toute méthode que j'essaie d'y associer ne fonctionne pas et me génère l'erreur qui suit :

Erreur d'Exécution '91':
Variable objet ou variable de bloc With non définie


Je précise que cette variable est UNIQUE dans l'entièreté de mon module, et qu'elle est créée uniquement dans cette procédure.

Les variables WbO et t sont définies en tout début de module après l'Option Explicit.

Objectif de la procédure ?

La partie de If à End If ne pose aucun problème, je n'ai pas besoin de m'étaler sur ce sujet étant donné qu'il appelle d'autres procédures, cela serait trop long à expliquer.

T_Add_CBSite : Il s'agit d'une ComboBox dont la valeur sera utilisée comme objet de recherche. La méthode Find va chercher cette valeur dans un tableau structuré de type...
T_Add_TBCC : Il s'agit d'une TextBox dans lequel s'inscrira le résultat trouvé dans le tableau

Site Centre de Coût
Ville 1 Centre de Coût 1
Ville 2 Centre de Coût 2

Ce que j'ai souhaité faire à travers la ligne qui comporte l'erreur, c'est d'attribuer à T_Add_TBCC la valeur correspondant au numéro de ligne associé à la variable LT et au numéro de colonne 2.

J'espère vous avoir exposé le problème de manière compréhensible !

Bonne journée,

Révèr

PS : Comment vous faites pour "surligner" une ligne ? Je trouve cela plus pratique que de mettre les balises de code pour 1 seule ligne, mais je ne sais pas comment on fait.