Sur une feuilles "Pieces" j'ai des boutons de commandes sur les lignes 2 à 6 inclusivement dont les noms sont cmdL2, cmdL3, etc.
Dans un module standard j'ai une procédure qui recherche des doublons possibles dans une colonne (B); tout le traitement que j'effectue fonctionne très bien jusqu'au moment ou je désire rendre un bouton invisible. c'est là que j'obtiens l'erreur 438. Voici mon code.

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
27
28
29
Sub VerifierDoublons(colB As Variant)
    Set FInventaire = Workbooks(PremierFichier).Worksheets("Pieces")
    FInventaire.Activate
    Sheets("Pieces").Select
    Dim cmdL As Variant
    Dim LigX As Integer     ' Ce sera la ligne à annulé
    Dim NoCol As Integer
    Dim NoLig As Long
    Dim Valeur As Variant
    NoCol = 2 'lecture de la colonne 2
    With FInventaire
        For NoLig = 2 To Split(.UsedRange.Address, "$")(4)
            Valeur = .Cells(NoLig, NoCol)
            If Valeur = colB Then
                LigX = NoLig
            End If
        Next
    cmdL = "cmdL" & LigX
    .Cells(LigX, NoCol).Value = "ANNULÉ"
    .Cells(LigX, NoCol + 2).Value = ""
    .Cells(LigX, NoCol + 3).Value = ""
    .Cells(LigX, NoCol + 4).Value = .Cells(LigX, NoCol + 4).Value - 1
    .Cells(LigX, NoCol + 5).Value = .Cells(LigX, NoCol + 5).Value + 1
    End With
    Sheets("Pieces").cmdL.Select                          ' C'est ici que ça plante
    Sheets("Pieces").cmdL.Visible = "False"
 
    Set FInventaire = Nothing
End Sub
J'ai beaucoup cherché mais en vain.
Merci d'avance