Problème boucles Checkbox

Bonjour,

Je bloque sur un bout de programme qui à pourtant l'air tout bête ( faut dire que mes bases c'est pas trop ça )

En gros j'ai 26 Checkbox face à 26 Label, et j'aimerais que lorsqu'on s'acquitte du menu, tous les labels correspondant aux checkbox cochées soient listés. Par exemple, admettons que Checkbox7, Checkbox12, et Checkbox21 soient cochées, j'aimerais qu'il soit renvoyé sur ma Feuil1 : Label7 en A1; Label12 en A2; Label21 en A3...

J'avais donc pensé à un truc du genre :

Private Sub CommandButton2_Click()

Dim ligne As Integer

For i = 1 To 26

If ("CheckBox" & i).Value = True

Then Range ("A1").Value = ("Label" & i).Value

ligne = Sheets("Feuil1").Range("A456541").End(xlUp).Row + 1

Next i

End Sub

Ce qui présente surement de nombreux problèmes de syntaxe

A l'aiiiiiiide

Et de cette manière ?

Dim ligne As Integer

ligne = 1

For i = 1 To 26

If ("CheckBox" & i).Value = True Then

Range ("A" & ligne).Value = ("Label" & i).Value

ligne = Sheets("Feuil1").Range("A456541").End(xlUp).Row + 1

Next i

Edit : j'ai envoyer par erreur le message, je reviens vite avec une solution

Salut,

Hélas non, même message d'erreur pour la même ligne (If ("CheckBox" & i).Value = True Then)

Voilà ça devrait convenir

Dim ligne As Integer
ligne = 1
For i = 1 To 4
    If Controls("CheckBox" & i).Value = True Then
            Range("A" & ligne).Value = Controls("Label" & i).Caption
            ligne = Sheets("Feuil1").Range("A456541").End(xlUp).Row + 1
        End If
Next i

J'ai un autre message d'erreur

"Erreur d’exécution '-2147024809 (80070057)':

Objet spécifié introuvable

(Sur la ligne : Range("A" & ligne).Value = Controls("Label" & i).Caption)$

EDIT : Mais en fait je crois avoir trouvé le problème, la numérotation de mes label était pas bonne

Je fais deux trois modif voir, je pense que ca vient de la

Si l'erreur parvient après plusieurs itérations c'est surement parce que j'ai oublié de modifier

For i = 1 To 4

en

For i = 1 To 26

Effectue la modification

Selon internet, cette erreur est déclenché lorsqu'on appel un contrôle n'existant pas

Oui exact, mais si 1 a 26 existent alors 1 a 4 aussi donc c'était pas le problème,

en revanche la je suis pas bien du coups, mes Label sont pas du tout définis de 1 à 26, j'ai des Label120, des Label166...

Il y'a pas un interface sur VBA qui recense tous les objets d'un userform avec leur dénomination?

Pas à ma connaissance, aller un peu de courage il y en a QUE 26 à faire

Yesss, ça fonctionne, merci à toi !

Rechercher des sujets similaires à "probleme boucles checkbox"