Ajout de CheckBox automatique | Erreur 438

Bonsoir à tous,

Alors voilà, j'essaie actuellement de faire un annuaire. A chaque nouvelle entrée dans cet annuaire j'aimerais ajouter une case à cocher à la ligne correspondante.

A l'exécution de mon code je me retrouve avec une erreur 438 : propriété ou méthode non gérée par cet objet.

Sub Bt_Valider_click()

Dim CBox As CheckBox
Dim L_row As Long
Dim C_CBox As Long
Dim CL, CT, CW, CH As Double

C_CBox = 2
L_row = Cells(Cells.Rows.Count, 3).End(xlUp).Row + 1

CL = Cells(L_row, C_CBox).Left
CT = Cells(L_row, C_CBox).Top
CW = Cells(L_row, C_CBox).Width
CH = Cells(L_row, C_CBox).Height

' Set CBox = Cells(L_row, C_CBox).CheckBoxes.Add(CL, CT, CW, CH) 
' J'ai aussi essayé avec cette syntaxe sans succès (même erreur). 

CBox = Cells(L_row, C_CBox).CheckBoxes.Add(CL, CT, CW, CH) '<-- Ligne concernée par l'erreur. 

With CBox
    .Value = xlOff
    .LinkedCell = Cells(L_row, C_CBox - 1)
    .Display3DShading = False
    .NumberFormat = ";;;"
End With

End Sub

Auriez-vous une solution ?

Merci d'avance pour vos réponses et de votre lecture.

NoK

Bonjour,

Un essai ...

Sub Bt_Valider_click()

Dim CBox As CheckBox
Dim L_row As Long
Dim CL As Double, CT As Double, CW As Double, CH As Double

With ActiveSheet
    C_CBox = 2
    L_row = .Cells(Cells.Rows.Count, 3).End(xlUp).Row + 1

    CL = .Cells(L_row, C_CBox).Left
    CT = .Cells(L_row, C_CBox).Top
    CW = .Cells(L_row, C_CBox).Width
    CH = .Cells(L_row, C_CBox).Height

    .CheckBoxes.Add(CL, CT, CW, CH).Select   '<-- Ligne concernée par l'erreur.
    With Selection
        .Value = xlOff
        .LinkedCell = ActiveSheet.Cells(L_row, C_CBox - 1)
        .Display3DShading = False
        '    .NumberFormat = ";;;"
    End With
End With
End Sub

ric

Bonsoir Ric,

Merci pour ta réponse, ça marche parfaitement pour moi, merci beaucoup.

Petite question du coup par rapport à ta solution. Il était juste nécessaire de préciser qu'on se trouve dans la feuille active pour que cela marche ?

NoK

Rechercher des sujets similaires à "ajout checkbox automatique erreur 438"