VBA avec Excel fonction then

Fermé
Deekay - 4 déc. 2007 à 21:58
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 5 déc. 2007 à 17:30
Bonjour,

j'essaie de faire une formule dans excel en VB... j'ai fait des cases a cocher et je veux creer un fonction qui dit ceci...

si la case est cocher (checkbox 1) la valeur de la cellule C2 de la feuille '' soumsion client " devra afficher la valeur d'une autre feuille, soit la cellule D4 de la feuille " liste pour cuisine "

je sais que je dois effectuer la fonction then mais je ne suis pas certains de comment faire tout ca car c'Est nouveau pour moi tout ca...

merci de votre aide..

Derek
A voir également:

8 réponses

hb93 Messages postés 214 Date d'inscription samedi 24 mars 2007 Statut Membre Dernière intervention 30 novembre 2008 21
4 déc. 2007 à 22:02
Peux tu déjà taper la formule en tière que tu proposes ??

Je fais aussi quelques macros.

On pourras peut-être ,à défaut de réussir à te la donner toute prête, essayer de corriger...
0
hb93 Messages postés 214 Date d'inscription samedi 24 mars 2007 Statut Membre Dernière intervention 30 novembre 2008 21
4 déc. 2007 à 22:10
La cellule cocher correspond déjà à une cellule défini ou est ce sur une plage de cellule.

est ce du style

si la case A1 est cochée ?

ou

si une des case de la cellule A1 à A7 est cochée ?
0
En fait ce que je veux faire est une liste que je coche selon ce que le client veux

ex:

A1 B1 C1 D1 E1
Penture (case a cocher est ici) 52,00 4,00 $ 208,00 $


donc la case est cocher ( elle se nomme checkbox1 si je double click dessus en tk) B1 si elle est cocher a ce moment la dans la case C1 apparait la dites valeur de mon autre feuille

j'ai cette operation qui se repete ensuite pour la checkbox 2 qui est pour des suports de tiroir, ensuite de la melamine etc... mais le principe est le meme
0
cette feuille ce note soumission client

A1 est Penture
B1 (endroit ou la case a cocher est situer dans la cellule B1)
C1 est 52 et vient de 'Liste pour cuisine'!D4
D1 est 4.00$ vient 'Liste pour cuisine'!D4
E1 est 208.00$ vient de 'Liste pour cuisine'!D4
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 718
4 déc. 2007 à 23:42
bonjour

si la case est cocher (checkbox 1) la valeur de la cellule C2 de la feuille '' soumsion client " devra afficher la valeur d'une autre feuille, soit la cellule D4 de la feuille " liste pour cuisine "

    If CheckBox1 Then
        Range("C2").FormulaR1C1 = "='liste pour cuisine'!R4C4"
    End If

ce devrait être ceci si j'ai bien compris ta demande."R4C4" correspond à la cellule D4
0
Salut

Merci beaucoup cai fonctionne bien pour les 2 premieres lignes mais je dois repeter cette operation pour +/- 30 lignes ce qui arrive est que parfois je coches la case et la valeur apparait alors que d'autre fois elle n'apparait pas

ce que j'ai fait est simplement copier ta ligne pour chacune des cases a cocher voici en gros pour mes 6 premieres ligne ce que j'ai:


Private Sub checkbox0_Click()

If checkbox0 = True Then
Range("C2").FormulaR1C1 = "='liste pour cuisine'!R4C4"
End If

If checkbox0 = False Then
Range("C2") = 0
End If

End Sub

Private Sub CheckBox1_Click()

If CheckBox1 = True Then
Range("C3").FormulaR1C1 = "='liste pour cuisine'!R5C4"
End If

If CheckBox1 = False Then
Range("C3") = 0
End If

End Sub


Private Sub CheckBox2_Click()

If CheckBox2 = True Then
Range("C4").FormulaR1C1 = "='liste pour cuisine'!R6C4"
End If

If CheckBox1 = False Then
Range("C4") = 0
End If

End Sub



Private Sub CheckBox3_Click()

If CheckBox3 = True Then
Range("C5").FormulaR1C1 = "='liste pour cuisine'!R7C4"
End If

If Inclus = False Then
Range("C5") = 0
End If

End Sub

Private Sub CheckBox4_Click()

If CheckBox4 = True Then
Range("C6").FormulaR1C1 = "='liste pour cuisine'!R8C4"
End If

If Inclus = False Then
Range("C6") = 0
End If

End Sub
0
desoler tout fonctionne j'avais oublier de changer des valeur en copiant pour mon false

un gros merci a Gbinforme pour ta grande aide
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 718
5 déc. 2007 à 17:30
bonjour

Tu peux très bien écrire plus simplement ton code :
Private Sub CheckBox1_Click()

If CheckBox1 = True Then
     Range("C3").FormulaR1C1 = "='liste pour cuisine'!R5C4"
Else
     Range("C3") = 0
End If

End Sub 
0