VB Excel - Utiliser une variable pour conditionner une boucle

VB Excel - Utiliser une variable pour conditionner une boucle - VB/VBA/VBS - Programmation

Marsh Posté le 30-06-2005 à 15:34:50    

Bonjour!
 
Alors ma requete est délicate à expliquer (vais-je trouver un sujet adapté à mon problème?!)
 
Voilà le contexte:
A travers un UserForm, l'utilisateur donne des renseignements nécessaires à une recherche:
 il choisit notamment entre ">", "=" ou "<".
 
Or, je souhaiterai récupérer ce choix (par exemple dans la variable ChOiX) pour effectuer la recherche avec une macro.
Cela donnerait quelque chose du genre:
     Do until cells(i,1) & ChOiX & 1000
        i = i + 1
     loop
 
Bien évidemment, ceci ne fonctionne pas. J'ai beau me casser la tête, je n'arrive pas  touver une astuce pour réaliser cette opération.
Pourriez vous m'aider?
 
Merci d'avance,
Phil.

Reply

Marsh Posté le 30-06-2005 à 15:34:50   

Reply

Marsh Posté le 30-06-2005 à 16:56:51    

Bon........
J'ai trouvé une astuce toute co*nne:
Je vais mettre des conditions:
 
If ChOiX=">" then
   Do until cells(i,1)>1000
     i=i+1
   loop
elseif ChOiX="=" then
   Do until cells(i,1)=1000
     i=i+1
   loop
elseif ChOiX="<" then
   Do until cells(i,1)<1000
     i=i+1
   loop
end if
 
mais bon, ça passe ici car y'a pas bcp de choix mais je suis pas satisfait. donc si quelqu'un a une idée: qu'il la mette! Merci!

Reply

Marsh Posté le 30-06-2005 à 17:50:03    

Salut Escartephil
 
un select case serait plus rapide que if puisque la macro ne serait pas obligée d'éliminer les choix les uns après les autres:
 
Select case choix
case is = "="
Do until cells(i,1)=1000  
i=i+1  
loop  
case is = ">"
Do until cells(i,1)>1000  
i=i+1  
loop  
...

 
Mais ça ne résoud pas ton problème..
 
Ron

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed