Case d'option + VBA

Hello,

Je me permets de vous poster un petit sujet car je n'arrive pas à me dépêtrer d'une macro. Il faut dire que ça faisait une dizaine d'année que j'en avais pas utilisé, et on sent bien la perte de données

Il me semble que mon problème sera simple pour vous (mais moi j'ai déjà passé 3h à chercher le code, et sans succès, faute de connaissance)

Alors je vous explique, j'ai un tableau qui propose deux types de configuration pour un aménagement d'une pièce. Chaque configuration ne propose pas les mêmes éléments. Il y a plusieurs pièces, le client aura toujours le choix entre les deux configurations à chaque fois. L'idée étant que le tableau renseigne à la fin sur les quantités totales pour chaque mobilier.

Aujourd'hui, j'aimerais que lorsque le client clique sur config 1, tous les éléments de la config 2 passe à 0, et lorsqu'on coche la config 2, alors les éléments de la config 1 passe à 0.

Voici la macro :

Private Sub CheckBox1_Click()

If CheckBox1.Value = True Then

[D77] = "1"

[D78] = "1"

[D79] = "1"

[D80] = "1"

[D81] = "1"

[D82] = "2"

[D83] = "1"

[D84] = "1"

[D85] = "1"

[D86] = "1"

Else

[D77] = "0"

[D78] = "0"

[D79] = "0"

[D80] = "0"

[D81] = "0"

[D82] = "0"

[D83] = "0"

[D84] = "0"

[D85] = "0"

[D86] = "0"

End If

End Sub

Il me semble qu'il y a aussi une histoire de "j'ai deux case d'option", et il faudrait en informer VBA.

Merci pour vos réponses,

N'hésitez-pas à me dire si je ne suis pas suffisamment claire.

Bonjour Material.

Si tu as deux configurations possibles, autant partir sur des optionsbuttons.

Une idée de code possible.

En estimant que la config1 est [D77:D86] et config2 [E77:E86].

A adapter.

Private Sub OptionButton1_Click()
    config ("choix1")
End Sub

Private Sub OptionButton2_Click()
    config ("choix2")
End Sub

Private Sub config(choix$)
    Select Case choix
        Case "choix1"
            [D77].Resize(10).Value = 1
            [E77].Resize(10).Value = 0
        Case "choix2"
            [D77].Resize(10).Value = 0
            [E77].Resize(10).Value = 1
    End Select
End Sub

Bonjour,

Tout d'abord, merci beaucoup pour votre réponse rapide,

J'ai tenté du coup :

Private Sub OptionButton1_Click()

config ("choix1")

End Sub

Private Sub OptionButton2_Click()

config ("choix2")

End Sub

Private Sub config(choix$)

Select Case choix

Case "choix1"

[D77].Resize(10).Value = 1

[D89].Resize(10).Value = 0

Case "choix2"

[D77].Resize(10).Value = 0

[D89].Resize(10).Value = 1

End Select

End Sub

J'ai mis en pièce jointe le fichier. Le problème se situe en fiche R+2, A73. Qu'ais-je pu désactiver pour que cela ne fonctionne pas ?

Merci beaucoup,

Il faut utiliser les contrôles ActiveX, regarde le fichier joint.

Ah c'est donc pour ça ! Je me demandais si les éléments de formulaire étaient les bons. Problème résolu en l'espace de 30min top chrono.

Merci beaucoup pour votre aide !

Rechercher des sujets similaires à "case option vba"