calcul sous condition

  • Initiateur de la discussion Initiateur de la discussion mephis
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

mephis

XLDnaute Occasionnel
Bonjour suis bloqué depuis un moment et après multiples recherche je viens vous sollicitez, Merci pour toutes les réponses que vous pourrez me fournir.

je vais vous montrer mon petit bout de programme pour que vous compreniez mieux.

dim j as variant
TextBox7 = j
If ComboBox4 = "THYSSEN" And ComboBox5 = "XC 48" And j > i Then
TextBox8 = (1.64 / (j * 7.8 * 0.000001))
End If

le problème est que il n'y a rien qui s'affiche dans ma textbox8 et quand je clique sur le bouton ce que j'ai inscrit dans ma textbox7 disparait.
alors que si je fais
If ComboBox4 = "THYSSEN" And ComboBox5 = "XC 48" And textbox7 > i Then
TextBox8 = (1.64 / (textbox7 * 7.8 * 0.000001))
End If

Ça ne fonctionne toujours pas mais ce que j'ai inscrit dans la textbox7 ne disparait plus


Merci de toute l'aide que vous pourrez m'apporter
Cordialement
 
Dernière édition:
Re : calcul sous condition

Re,


Si le but est d'affecter le valeur de ta textbox7 dans la variable J c'est comme sa qu'il faut l’écrire.

j =TextBox7.value ou j = TextBox7.text

La tu affecte a ta textbox la valeur de j et j = a rien en début de programme d'ou le fait que le contenu de ta textbox s'efface

Meilleures salutations

Vorens
 
Re : calcul sous condition

Re,


Tu met un test j>i mais vu que ton programme n’affecte jamais rien dans la variable j ton test sera TOUJOURS faux donc jamais de calcul car même si i = 0, j ne sera pas plus grand vu qu'il est égal a rien.

Et remplace j>i par Testbox >i sa change rien vu qu'avant ton test if ton écrase la valeur de text box par j qui est encore et jours égale a rien.

Donc ton problème viens bien de l'endroit que je t'ai dit. De plus, j est destiné a recevoir quel type de donnée ? car tu fait un test avec une variable nommée i qui habituellement est affecté a des viable de boucle donc des int et tu déclare J en variant.

J'ajoute encore que visiblement tu montre pas tout le code, car i ne reçoi aucune valeur dans le code présenté.

Meilleures salutations
 
Re : calcul sous condition

désolé j'ai pas montré i effectivement


dim i as variant
dim j as variant

i=6410256

textbox7.value=j
If ComboBox4 = "THYSSEN" And ComboBox5 = "XC 48" And j > i Then
TextBox8 = (1.64 / (j * 7.8 * 0.000001))
End If
ce que je rentre dans j est un nombre
donc j'ai fais comme tu me l'as dis mais ça ne fonctionne toujours pas
 
Re : calcul sous condition

Re,


Donc on peut aussi corriger ta déclaration de variable


Des nombre sont pas des variant mais des integer

dim i as Integer
dim j as integer

MAIS

si ton nombre est plus grand que 65535 il faut les déclarer en long donc (ce qui est ton cas ici)

dim j as long
dim i as long

En inverse moi ce textbox 7 avec le j !

j= textbox7.value
 
Dernière édition:
Re : calcul sous condition

Dim i As Long
i = 6410256

Dim j As Long
j = TextBox7.Value

If ComboBox4 = "THYSSEN" And ComboBox5 = "XC 48" And j > i Then
TextBox8 = (1.64 / (j * 7.8 * 0.000001))
End If

Voilà maintenant le problème est que je n'ai aucune valeur qui s'affiche dans ma textbox8
 
Re : calcul sous condition

Re,


Si je puis te conseiller un peut de lecture car si tu veux commencer le VBA (ce qui est trèèèèèèès bien) il faut partir sur des bases solide et bien comprendre les fondamentaux de la programmation si non, tu va bien glairer.

Les base sur la syntaxe: Les fiches VBA - Les syntaxes fondamentales
Tout connaître sur les variables: http://silkyroad.developpez.com/VBA/LesVariables/¨
Tout sur la magie des array :Utiliser les variables tableaux en VBA Excel
Tout sur les userform : Utiliser les UserForm en VBA Excel

Il y a encore de nombreux autre tuto très bien fait sur ce site. je te conseil vraiment d'y passer un peut de temps
 
Re : calcul sous condition

Re,


Si aucune valeur s'affiche c'est que ton test if n'est pas vrai.

Pour savoir si sa marche: met un point d'arret sur ton test IF ( tu clic dans la bandede gauche et tu verra ligne devenir bordeau (rouge).

Tu effectue la macro, le code va s'arreter au point d'arret. tu presse F8, le code va exectuer l'instruction (mode pas à pas). si la ligne va directement au end if c'est que ton test est faut. dans ce cas, contrôl la valeur des tes variable ( affichage => fenêtre des variables locale).
 
Re : calcul sous condition

Re,


Et aussi:

If ComboBox4.text = "THYSSEN" And ComboBox5.text = "XC 48" And j > i Then
TextBox8.value = (1.64 / (j * 7.8 * 0.000001))
End If

Mais met moi ton fichier en pièce jointe. Te l'aurais corriger depuis 30 min deja 🙂
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
662
B
  • Question Question
Réponses
3
Affichages
1 K
Réponses
7
Affichages
987
Réponses
33
Affichages
3 K
Retour