Boucle If sous VB
Résolu
ethomas
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
sofiane -
sofiane -
A voir également:
- Boucle If sous VB
- Vb - Télécharger - Langages
- Vb cable - Télécharger - Audio & Musique
- Xiaomi s'éteint tout seul et se rallume en boucle - Forum Xiaomi
- Boucle excel sans macro - Forum Excel
- Mon pc s'allume et s'éteint en boucle ✓ - Forum Matériel & Système
13 réponses
ce type de code marche très bien sous VB
regarde un peu les tutoriaux ici :
https://vb.developpez.com/cours/
regarde un peu les tutoriaux ici :
https://vb.developpez.com/cours/
If AgeFrederic > 30 Then 'Instructions si la condition est vraie msg = "Frédéric a plus de 30 ans" MsgBox msg ElseIf AgeFrederic >25 Then 'Instructions si la condition est vraie msg = "Frédéric a plus de 25 ans" MsgBox msg ElseIf AgeFrederic >20 Then 'Instructions si la condition est vraie msg = "Frédéric a plus de 20 ans" MsgBox msg ElseIf AgeFrederic > 15 Then 'Instructions si la condition est vraie msg = "Frédéric a plus de 15 ans" MsgBox msg Else 'Instructions si la condition est fausse msg = "Frédéric a 15 ans ou moins de 15 ans" MsgBox msg End If
ben par exemple dans mon code test j'ai:
Sub f()
Dim mycell As Object
Dim k As Integer, l As Integer
mycell = Application.InputBox("choisir une cellule", "choix d'une cellule")
k = mycell.Row
l = mycell.Column
MsgBox "k=" & k & "l=" & l
End Sub
du coup je fais comme ça:
Sub g()
Dim k As Integer, l As Integer
k = InputBox("indice ligne", "choix case", 1)
l = InputBox("indice colone", "choix case", 1)
MsgBox "k=" & k & " & " & "l=" & l
End Sub
Le premier ne marche pas. Mais moi j'aimerai cliquer sur une cellule au lieu d'entrer les indices. Du coup ça vient soit de la declaration de mycell, soit de l'application Application.InputBox qui ne marche pas pour les objets...(???)
Sub f()
Dim mycell As Object
Dim k As Integer, l As Integer
mycell = Application.InputBox("choisir une cellule", "choix d'une cellule")
k = mycell.Row
l = mycell.Column
MsgBox "k=" & k & "l=" & l
End Sub
du coup je fais comme ça:
Sub g()
Dim k As Integer, l As Integer
k = InputBox("indice ligne", "choix case", 1)
l = InputBox("indice colone", "choix case", 1)
MsgBox "k=" & k & " & " & "l=" & l
End Sub
Le premier ne marche pas. Mais moi j'aimerai cliquer sur une cellule au lieu d'entrer les indices. Du coup ça vient soit de la declaration de mycell, soit de l'application Application.InputBox qui ne marche pas pour les objets...(???)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour je suis débutant en vb . j'ai un ptit problème dans mon if .O fait jveu mettre if a=b and b=c then ...
mets le pc beugue directement et ché pas pk. Merci davance pour votre aide!!
mets le pc beugue directement et ché pas pk. Merci davance pour votre aide!!
Bonjour à tous,
pour ma part je n'arrive pas à imbriquer plusieurs boucles if, avec une seule ça roule, mais avec plusieurs on dirait qu'une seule est prise en compte. Ca ne marche pas tout à fait comme du langage C a priori, quelqu'un pourrait-il m'expliquer mon problème de syntaxe? voici une version simplifiée de mon problème :
Function a(x)
If 0 < x <= 1 Then
a = 1
ElseIf 1 < x <= 2 Then
a = 2
Else
a = 0
End If
End Function
Cela donne toujours a=1.
Merci.
pour ma part je n'arrive pas à imbriquer plusieurs boucles if, avec une seule ça roule, mais avec plusieurs on dirait qu'une seule est prise en compte. Ca ne marche pas tout à fait comme du langage C a priori, quelqu'un pourrait-il m'expliquer mon problème de syntaxe? voici une version simplifiée de mon problème :
Function a(x)
If 0 < x <= 1 Then
a = 1
ElseIf 1 < x <= 2 Then
a = 2
Else
a = 0
End If
End Function
Cela donne toujours a=1.
Merci.
peux tu mettre ton vrai code stp?
pke pour le moment ce pseudo code m'a l'air corect.
il y a peut etre une petite pichenette quelque part...
pke pour le moment ce pseudo code m'a l'air corect.
il y a peut etre une petite pichenette quelque part...
bonjour les tests ne s'ecrivent pas comme cela:
If 0 < x <= 1 Then
doit s'ecrire
if (x >0) and (x<=1) then
...
If 0 < x <= 1 Then
doit s'ecrire
if (x >0) and (x<=1) then
...
Bonjour tout le monde, merci de m'avoir répondu. En fait j'ai trouvé ça aussi hier, ce langage n'accepte pas les encadrements, j'ai essayé :
if x>i-1 and x<i then (sans parenthèse ça marche)
a=i
...
Voilà merci beaucoup, bonne continuation.
ps: j'abuse peut être un peu mais si qqn sait comment on fait pour que cette fonction soit toujours utilisable(sur la version 2007) je suis preneur.
if x>i-1 and x<i then (sans parenthèse ça marche)
a=i
...
Voilà merci beaucoup, bonne continuation.
ps: j'abuse peut être un peu mais si qqn sait comment on fait pour que cette fonction soit toujours utilisable(sur la version 2007) je suis preneur.
dsl je connais pas du tout excel 2007
ai pire imbrique deux fonctions if
sinon c'ets bien que tu aies trouvé!
bonne continuation, et ptet a bientot!
ai pire imbrique deux fonctions if
sinon c'ets bien que tu aies trouvé!
bonne continuation, et ptet a bientot!
Salut, dsl d'avoir encore besoin 2 te déranger, saurais tu par hasard coment on peut, dans un code sous vba, faire un genre 2 pause pour demander à l'utilisateur de choisir une cellule?
Pour l'instant j'utilise 2 inputbox au début pour demander les coordonnées de la cellule, mais ce serait tellement plus simple de cliquer directement, au lieu de convertir mentalement l'indice colonne FO en 171...
merci beaucoup!!
Pour l'instant j'utilise 2 inputbox au début pour demander les coordonnées de la cellule, mais ce serait tellement plus simple de cliquer directement, au lieu de convertir mentalement l'indice colonne FO en 171...
merci beaucoup!!
Salut,
en fait ce code ne marche pas on dirait que mycell n'est pas reconnu comme une celllule (déclaré comme objet pourtant, et ça marche pour des entiers par contre) ou alors il faut utiliser une autre fonction, ou une propriété de inputbox, je ne sais pas...Si tu ne vois pas d'où viens le pb ce n'est pas bien grave je l'ai déjà contourné, mais j'aimerais savoir qd mêm.
merci
en fait ce code ne marche pas on dirait que mycell n'est pas reconnu comme une celllule (déclaré comme objet pourtant, et ça marche pour des entiers par contre) ou alors il faut utiliser une autre fonction, ou une propriété de inputbox, je ne sais pas...Si tu ne vois pas d'où viens le pb ce n'est pas bien grave je l'ai déjà contourné, mais j'aimerais savoir qd mêm.
merci
Merci beaucoup!!!!