Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
494 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  boucle if then else dans une autre boucle if then else

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

boucle if then else dans une autre boucle if then else

n°1324520
tibo44
Posté le 13-03-2006 à 20:17:01  profilanswer
 

voila mon problème, j'ai une boucle if then else et après le then je voudrais mettre aussi une boucle if then else. Alors voila ce que j'ai fait mais ça ne marche pas. Pourriez vous me dire pourquoi?
 
If Sheets("Feuil1" ).Cells(8, 1) = ">" Then
            If Val(Sheets("Feuil1" ).Cells(7, 2 * k + 8)) > Val(Sheets("Feuil1" ).Cells(9, 1)) Then Sheets("Feuil1" ).Cells(9, (2 * k + 8) - (2 * a + 1)) = Val(Sheets("Feuil1" ).Cells(7, 2 * k + 8)) Else Sheets("Feuil1" ).Cells(9, (2 * k + 8) - (2 * a + 1)) = Val(Sheets("Feuil1" ).Cells(9, 1))
            End If
      Else: Sheets("Feuil1" ).Cells(9, (2 * k + 8) - (2 * a + 1)) = Val(Sheets("Feuil1" ).Cells(7, 2 * k + 8)) / Val(Sheets("Feuil1" ).Cells(9, 1))
      End If
 
merci
 
("PS: est ce que c'est correct le = ">" pour savoir si il y a écrit > dans la cellule)

mood
Publicité
Posté le 13-03-2006 à 20:17:01  profilanswer
 

n°1324565
galopin01
Posté le 13-03-2006 à 21:32:00  profilanswer
 

bonsoir,
ça c'est une putain de formule de la mort !
Tu pourrais commencer par y mettre du With...  
Structurer le tout de ligne en ligne

Code :
  1. If.. Then
  2.   If.. Then
  3.   Else
  4.   End if
  5. Else
  6. End if


Supprimer le " : "
 
indenter (un peu, juste ce qu'il faut : pas trop pour voir le bout de ta ligne)
ça clarifierait un peu ton truc et tu verrais tout de suite ce qui cloche
Déclarer en plus quelques variables complémentaires...^
 
Une bonne macro doit tenir dans ton écran : si tu n'en vois pas le bout il y a des chances que tu n'y arrives pas.
La solution :

Code :
  1. Sub test()
  2. Dim x, y
  3. With Sheets("Feuil1" )
  4. x = Val(.Cells(9, 1))
  5. y = Val(.Cells(7, 2 * k + 8))
  6. If .Cells(8, 1) = ">" Then
  7.   If Val(.Cells(7, 2 * k + 8)) > x Then
  8.       .Cells(9, (2 * k + 8) - (2 * a + 1)) = y
  9.   Else
  10.       .Cells(9, (2 * k + 8) - (2 * a + 1)) = x
  11.   End If
  12. Else
  13.   .Cells(9, (2 * k + 8) - (2 * a + 1)) = y / x
  14. End If
  15. End With
  16. End Sub


A+


---------------
roger
n°1324584
tibo44
Posté le 13-03-2006 à 21:51:12  profilanswer
 

merci c'est super simpa. Ca a l'air de marcher. Merci beaucoup. En plus je ne connaissais pas le with sheets("feuil1" ). ça va bien m'arranger.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  boucle if then else dans une autre boucle if then else

 

Sujets relatifs
Supression de ligne en boucle (Word)[Matlab] Boucle de lecture de fichier
Pb boucle for concaténé avec une variableboucle!!
[PHP] Boucle do while() a condition multiples (résolu)[resolu]condition dans une boucle
probleme boucle... grosse boucle... voir probleme à la fin[VBScript] [RESOLU] modifier une fonction dans une boucle
[VBScript] [RESOLU] Boucle Do ... Loopprocessus et boucle infinie -> ressources CPU à 100% ou pas?
Plus de sujets relatifs à : boucle if then else dans une autre boucle if then else


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR