OVH Cloud OVH Cloud

case à cocher et vba

5 réponses
Avatar
Ma Dalton
Bonjour,

je dois dire qu'avec VBA sous acces je fais à peu près ce que je veux mais
en excel je me sans vraiment nul car à part quelques similitudes, je trouve
cela très différent.

je souhaite faire un formulaire dans lequel j'utilise une case à cocher (il
y en aura plusieurs mais le principe sera le même). Ma case sera
positionnée disons en I12. Je voudrais donc que si je coche cette case,
qu'il s'inscrive automatiquement $14,25 dans la cellule I12. Si je coche
pas ou que je décoche la case, que ma cellule A5 redevienne 0 $ ou même null
je préfèrerais.

question 1: Je ne sais vraiment pas par où commencer. Que faut-il mettre
dans la sub

Sub Caseàcocher7_QuandClic()
' I12 = IIF(Caseàcocher, 14.25, null) ' j'ai mis en commentair pcq ne
fonctionne pas
End Sub

question 2: En procédant de la sorte comment je vais faire pour masquer la
valeur dans I12, je ne peux quand même pas la protéger car je ne pourrai
plus l'alimenter d'une valeur, n'est-ce pas ?

merci

5 réponses

Avatar
LSteph
Bonjour Ma,

Tu as donc utilisé une case à cocher de la barre outil Formulaire et non
VBA,
soit,
1- pour faire ce que tu veux en I12 avec contrôle type Formulaire
En J12 mets ta case un peu au dessus pour l'instant,
de manière à ce que son libellé
ne cache pas la cellule J12(tu la cacheras après)
ensuite, clic droit
Format de contrôle
Celluleliée: J12 OK
puis clique sur la petite équerre bleue pour sortir du mode création
lorsque tu coches la case, J12 renvoie vrai
on va donc revenir en mode création(équere bleue)
et déplacer et étirer la case pour qu'elle masque bien la cellule J12
(en gardant alt appuyé on peut ajuster à la cellule)
En I12 tu écris:
=si(J12;14,25;"")

2-pour faire ce que tu veux en I12 avec contrôle VBA
Menu Affichage Barre d'outils Visual Basic
la placer dans les barres en haut à droite (il doit y avoir de la place)
Bouton outils dans la barre qui s'affiche
choisir le contrôle case à cocher l'emmener dans la feuille à l'endroit
voulu
doublecliquer dessus
puis coller le code ci après
(qui s'inscrit dans le module ainsi affiché et réservé au code de la
feuille):

'''***
Private Sub CheckBox1_Click()
If CheckBox1 Then
[i12] = 14.25
Else: [i12] = ""
End If
End Sub
'''***

'fermer le VBE
'penser à sortir du mode création pour tester

'Cordialement

'lSteph
"Ma Dalton" a écrit dans le message de news:
%
Bonjour,

je dois dire qu'avec VBA sous acces je fais à peu près ce que je veux mais
en excel je me sans vraiment nul car à part quelques similitudes, je
trouve cela très différent.

je souhaite faire un formulaire dans lequel j'utilise une case à cocher
(il y en aura plusieurs mais le principe sera le même). Ma case sera
positionnée disons en I12. Je voudrais donc que si je coche cette case,
qu'il s'inscrive automatiquement $14,25 dans la cellule I12. Si je coche
pas ou que je décoche la case, que ma cellule A5 redevienne 0 $ ou même
null je préfèrerais.

question 1: Je ne sais vraiment pas par où commencer. Que faut-il mettre
dans la sub

Sub Caseàcocher7_QuandClic()
' I12 = IIF(Caseàcocher, 14.25, null) ' j'ai mis en commentair pcq ne
fonctionne pas
End Sub

question 2: En procédant de la sorte comment je vais faire pour masquer la
valeur dans I12, je ne peux quand même pas la protéger car je ne pourrai
plus l'alimenter d'une valeur, n'est-ce pas ?

merci



Avatar
Ma Dalton
Salut,
J'ai encore des croutes à manger pour bien me débrouiller seul, mais c'est
vrai que je n'étais pas en VBA, comment aurais-je pu savoir?
Bref la 2eme proposition (en vrai VBA) est géniale. C'est elle que j'ai
choisi. j'ai même déjà améliorer en changeant le montant fixe de 14.25 par
une référence à une cellule (prévoyons une majoration du montant
remboursé...)

Encore une petite question SVP. Comment masquer la cellule i12 sans masquer
la colone i. J'ai tenté le coup via format, cellule, protection, masqué:
mais sans succès

merci

"LSteph" a écrit dans le message de news:

Bonjour Ma,

Tu as donc utilisé une case à cocher de la barre outil Formulaire et non
VBA,
soit,
1- pour faire ce que tu veux en I12 avec contrôle type Formulaire
En J12 mets ta case un peu au dessus pour l'instant,
de manière à ce que son libellé
ne cache pas la cellule J12(tu la cacheras après)
ensuite, clic droit
Format de contrôle
Celluleliée: J12 OK
puis clique sur la petite équerre bleue pour sortir du mode création
lorsque tu coches la case, J12 renvoie vrai
on va donc revenir en mode création(équere bleue)
et déplacer et étirer la case pour qu'elle masque bien la cellule J12
(en gardant alt appuyé on peut ajuster à la cellule)
En I12 tu écris:
=si(J12;14,25;"")

2-pour faire ce que tu veux en I12 avec contrôle VBA
Menu Affichage Barre d'outils Visual Basic
la placer dans les barres en haut à droite (il doit y avoir de la place)
Bouton outils dans la barre qui s'affiche
choisir le contrôle case à cocher l'emmener dans la feuille à l'endroit
voulu
doublecliquer dessus
puis coller le code ci après
(qui s'inscrit dans le module ainsi affiché et réservé au code de la
feuille):

'''***
Private Sub CheckBox1_Click()
If CheckBox1 Then
[i12] = 14.25
Else: [i12] = ""
End If
End Sub
'''***

'fermer le VBE
'penser à sortir du mode création pour tester

'Cordialement

'lSteph
"Ma Dalton" a écrit dans le message de news:
%
Bonjour,

je dois dire qu'avec VBA sous acces je fais à peu près ce que je veux
mais en excel je me sans vraiment nul car à part quelques similitudes, je
trouve cela très différent.

je souhaite faire un formulaire dans lequel j'utilise une case à cocher
(il y en aura plusieurs mais le principe sera le même). Ma case sera
positionnée disons en I12. Je voudrais donc que si je coche cette case,
qu'il s'inscrive automatiquement $14,25 dans la cellule I12. Si je coche
pas ou que je décoche la case, que ma cellule A5 redevienne 0 $ ou même
null je préfèrerais.

question 1: Je ne sais vraiment pas par où commencer. Que faut-il
mettre dans la sub

Sub Caseàcocher7_QuandClic()
' I12 = IIF(Caseàcocher, 14.25, null) ' j'ai mis en commentair pcq ne
fonctionne pas
End Sub

question 2: En procédant de la sorte comment je vais faire pour masquer
la valeur dans I12, je ne peux quand même pas la protéger car je ne
pourrai plus l'alimenter d'une valeur, n'est-ce pas ?

merci







Avatar
Ma Dalton
salut
Pour ma question j'aurais du dire :
il faut que la valeur 14.25 de la cellule i12 soit masquée et que seulement
la case à cocher reste visible. Car à l'impression, il ne faut pas que la
case superpose la valeur. Je veux juste voir la case à cocher

merci

"Ma Dalton" a écrit dans le message de news:
O%
Salut,
J'ai encore des croutes à manger pour bien me débrouiller seul, mais c'est
vrai que je n'étais pas en VBA, comment aurais-je pu savoir?
Bref la 2eme proposition (en vrai VBA) est géniale. C'est elle que j'ai
choisi. j'ai même déjà améliorer en changeant le montant fixe de 14.25 par
une référence à une cellule (prévoyons une majoration du montant
remboursé...)

Encore une petite question SVP. Comment masquer la cellule i12 sans
masquer la colone i. J'ai tenté le coup via format, cellule, protection,
masqué: mais sans succès

merci

"LSteph" a écrit dans le message de news:

Bonjour Ma,

Tu as donc utilisé une case à cocher de la barre outil Formulaire et non
VBA,
soit,
1- pour faire ce que tu veux en I12 avec contrôle type Formulaire
En J12 mets ta case un peu au dessus pour l'instant,
de manière à ce que son libellé
ne cache pas la cellule J12(tu la cacheras après)
ensuite, clic droit
Format de contrôle
Celluleliée: J12 OK
puis clique sur la petite équerre bleue pour sortir du mode création
lorsque tu coches la case, J12 renvoie vrai
on va donc revenir en mode création(équere bleue)
et déplacer et étirer la case pour qu'elle masque bien la cellule J12
(en gardant alt appuyé on peut ajuster à la cellule)
En I12 tu écris:
=si(J12;14,25;"")

2-pour faire ce que tu veux en I12 avec contrôle VBA
Menu Affichage Barre d'outils Visual Basic
la placer dans les barres en haut à droite (il doit y avoir de la place)
Bouton outils dans la barre qui s'affiche
choisir le contrôle case à cocher l'emmener dans la feuille à l'endroit
voulu
doublecliquer dessus
puis coller le code ci après
(qui s'inscrit dans le module ainsi affiché et réservé au code de la
feuille):

'''***
Private Sub CheckBox1_Click()
If CheckBox1 Then
[i12] = 14.25
Else: [i12] = ""
End If
End Sub
'''***

'fermer le VBE
'penser à sortir du mode création pour tester

'Cordialement

'lSteph
"Ma Dalton" a écrit dans le message de news:
%
Bonjour,

je dois dire qu'avec VBA sous acces je fais à peu près ce que je veux
mais en excel je me sans vraiment nul car à part quelques similitudes,
je trouve cela très différent.

je souhaite faire un formulaire dans lequel j'utilise une case à cocher
(il y en aura plusieurs mais le principe sera le même). Ma case sera
positionnée disons en I12. Je voudrais donc que si je coche cette case,
qu'il s'inscrive automatiquement $14,25 dans la cellule I12. Si je
coche pas ou que je décoche la case, que ma cellule A5 redevienne 0 $ ou
même null je préfèrerais.

question 1: Je ne sais vraiment pas par où commencer. Que faut-il
mettre dans la sub

Sub Caseàcocher7_QuandClic()
' I12 = IIF(Caseàcocher, 14.25, null) ' j'ai mis en commentair pcq
ne fonctionne pas
End Sub

question 2: En procédant de la sorte comment je vais faire pour masquer
la valeur dans I12, je ne peux quand même pas la protéger car je ne
pourrai plus l'alimenter d'une valeur, n'est-ce pas ?

merci











Avatar
LSteph
Re Bonjour,
La police en blanc sur blanc

lSteph
"Ma Dalton" a écrit dans le message de news:
O%
Salut,
J'ai encore des croutes à manger pour bien me débrouiller seul, mais c'est
vrai que je n'étais pas en VBA, comment aurais-je pu savoir?
Bref la 2eme proposition (en vrai VBA) est géniale. C'est elle que j'ai
choisi. j'ai même déjà améliorer en changeant le montant fixe de 14.25 par
une référence à une cellule (prévoyons une majoration du montant
remboursé...)

Encore une petite question SVP. Comment masquer la cellule i12 sans
masquer la colone i. J'ai tenté le coup via format, cellule, protection,
masqué: mais sans succès

merci

"LSteph" a écrit dans le message de news:

Bonjour Ma,

Tu as donc utilisé une case à cocher de la barre outil Formulaire et non
VBA,
soit,
1- pour faire ce que tu veux en I12 avec contrôle type Formulaire
En J12 mets ta case un peu au dessus pour l'instant,
de manière à ce que son libellé
ne cache pas la cellule J12(tu la cacheras après)
ensuite, clic droit
Format de contrôle
Celluleliée: J12 OK
puis clique sur la petite équerre bleue pour sortir du mode création
lorsque tu coches la case, J12 renvoie vrai
on va donc revenir en mode création(équere bleue)
et déplacer et étirer la case pour qu'elle masque bien la cellule J12
(en gardant alt appuyé on peut ajuster à la cellule)
En I12 tu écris:
=si(J12;14,25;"")

2-pour faire ce que tu veux en I12 avec contrôle VBA
Menu Affichage Barre d'outils Visual Basic
la placer dans les barres en haut à droite (il doit y avoir de la place)
Bouton outils dans la barre qui s'affiche
choisir le contrôle case à cocher l'emmener dans la feuille à l'endroit
voulu
doublecliquer dessus
puis coller le code ci après
(qui s'inscrit dans le module ainsi affiché et réservé au code de la
feuille):

'''***
Private Sub CheckBox1_Click()
If CheckBox1 Then
[i12] = 14.25
Else: [i12] = ""
End If
End Sub
'''***

'fermer le VBE
'penser à sortir du mode création pour tester

'Cordialement

'lSteph
"Ma Dalton" a écrit dans le message de news:
%
Bonjour,

je dois dire qu'avec VBA sous acces je fais à peu près ce que je veux
mais en excel je me sans vraiment nul car à part quelques similitudes,
je trouve cela très différent.

je souhaite faire un formulaire dans lequel j'utilise une case à cocher
(il y en aura plusieurs mais le principe sera le même). Ma case sera
positionnée disons en I12. Je voudrais donc que si je coche cette case,
qu'il s'inscrive automatiquement $14,25 dans la cellule I12. Si je
coche pas ou que je décoche la case, que ma cellule A5 redevienne 0 $ ou
même null je préfèrerais.

question 1: Je ne sais vraiment pas par où commencer. Que faut-il
mettre dans la sub

Sub Caseàcocher7_QuandClic()
' I12 = IIF(Caseàcocher, 14.25, null) ' j'ai mis en commentair pcq
ne fonctionne pas
End Sub

question 2: En procédant de la sorte comment je vais faire pour masquer
la valeur dans I12, je ne peux quand même pas la protéger car je ne
pourrai plus l'alimenter d'une valeur, n'est-ce pas ?

merci











Avatar
Ma Dalton
pourquoi se creucer la tête, ça fonctionne parfaitement
merci

"LSteph" a écrit dans le message de news:

Re Bonjour,
La police en blanc sur blanc

lSteph
"Ma Dalton" a écrit dans le message de news:
O%
Salut,
J'ai encore des croutes à manger pour bien me débrouiller seul, mais
c'est vrai que je n'étais pas en VBA, comment aurais-je pu savoir?
Bref la 2eme proposition (en vrai VBA) est géniale. C'est elle que j'ai
choisi. j'ai même déjà améliorer en changeant le montant fixe de 14.25
par une référence à une cellule (prévoyons une majoration du montant
remboursé...)

Encore une petite question SVP. Comment masquer la cellule i12 sans
masquer la colone i. J'ai tenté le coup via format, cellule, protection,
masqué: mais sans succès

merci

"LSteph" a écrit dans le message de news:

Bonjour Ma,

Tu as donc utilisé une case à cocher de la barre outil Formulaire et non
VBA,
soit,
1- pour faire ce que tu veux en I12 avec contrôle type Formulaire
En J12 mets ta case un peu au dessus pour l'instant,
de manière à ce que son libellé
ne cache pas la cellule J12(tu la cacheras après)
ensuite, clic droit
Format de contrôle
Celluleliée: J12 OK
puis clique sur la petite équerre bleue pour sortir du mode création
lorsque tu coches la case, J12 renvoie vrai
on va donc revenir en mode création(équere bleue)
et déplacer et étirer la case pour qu'elle masque bien la cellule J12
(en gardant alt appuyé on peut ajuster à la cellule)
En I12 tu écris:
=si(J12;14,25;"")

2-pour faire ce que tu veux en I12 avec contrôle VBA
Menu Affichage Barre d'outils Visual Basic
la placer dans les barres en haut à droite (il doit y avoir de la place)
Bouton outils dans la barre qui s'affiche
choisir le contrôle case à cocher l'emmener dans la feuille à l'endroit
voulu
doublecliquer dessus
puis coller le code ci après
(qui s'inscrit dans le module ainsi affiché et réservé au code de la
feuille):

'''***
Private Sub CheckBox1_Click()
If CheckBox1 Then
[i12] = 14.25
Else: [i12] = ""
End If
End Sub
'''***

'fermer le VBE
'penser à sortir du mode création pour tester

'Cordialement

'lSteph
"Ma Dalton" a écrit dans le message de news:
%
Bonjour,

je dois dire qu'avec VBA sous acces je fais à peu près ce que je veux
mais en excel je me sans vraiment nul car à part quelques similitudes,
je trouve cela très différent.

je souhaite faire un formulaire dans lequel j'utilise une case à cocher
(il y en aura plusieurs mais le principe sera le même). Ma case sera
positionnée disons en I12. Je voudrais donc que si je coche cette
case, qu'il s'inscrive automatiquement $14,25 dans la cellule I12. Si
je coche pas ou que je décoche la case, que ma cellule A5 redevienne 0
$ ou même null je préfèrerais.

question 1: Je ne sais vraiment pas par où commencer. Que faut-il
mettre dans la sub

Sub Caseàcocher7_QuandClic()
' I12 = IIF(Caseàcocher, 14.25, null) ' j'ai mis en commentair pcq
ne fonctionne pas
End Sub

question 2: En procédant de la sorte comment je vais faire pour masquer
la valeur dans I12, je ne peux quand même pas la protéger car je ne
pourrai plus l'alimenter d'une valeur, n'est-ce pas ?

merci