Problème avec une boucle For

Résolu/Fermé
tommyls1 Messages postés 2 Date d'inscription mercredi 24 juillet 2013 Statut Membre Dernière intervention 25 juillet 2013 - 24 juil. 2013 à 12:43
tommyls1 Messages postés 2 Date d'inscription mercredi 24 juillet 2013 Statut Membre Dernière intervention 25 juillet 2013 - 25 juil. 2013 à 12:43
Bonjour,

Je sollicite d'urgence toute aide concernant une boucle For d'une simplicité enfantine mais qui ne veut pas s'exécuter depuis 2 jours..
Le pire c'est que je suis plutôt bon en VBA à la base mais là j'avoue que je ne comprend pas. J'ai tout essayé je crois mais rien n'y fait!

Voilà le code que j'ai. Sans les boucles, cela marche très bien pour la première case, aucun problème, mais dès que je met les boucles ça me donne 0 sur la première case et ça ne lance pas la boucle...

Public Sub Calcul_devis_suite()

Dim cellule, cellule2, cellule3 As Range

Dim i, j As Long


Set cellule = ThisWorkbook.Worksheets("Etablissement Maison").Range("C19")

Set cellule3 = ThisWorkbook.Worksheets("Devis Maison").Range("B5")

Set cellule2 = ThisWorkbook.Worksheets("Devis Maison").Range("A5")


i = 1
j = 1

cellule3(j).Value = 0

For j = j To j = 17

For i = i To i = 10

If cellule(i).Value = cellule2(j).Value Then

cellule3(j).Value = cellule3(j).Value + 1

Else: cellule3(j).Value = cellule3(j).Value

End If

Next i

Next j


End Sub



C'est fait à l'ancienne j'avoue mais normalement je vois pas d'erreurs!

HELP!! pourquoi diable les boucles ne se lancent pas???

A voir également:

2 réponses

melanie1324 Messages postés 1505 Date d'inscription vendredi 25 mai 2007 Statut Membre Dernière intervention 31 janvier 2018 154
24 juil. 2013 à 13:52
bonjour,

j'ai trouvé ce qui ne va pas dans tes boucles :

au lieu d'écrire :
For j = j To j = 17

For i = i To i = 10


il faut écrire

For j = j To 17

For i = i To 10


D'ailleurs, il y a un truc que je ne comprends pas dans ton code, car pour moi,

ce que tu écris ne vas rien faire :

cellule3(j).Value = cellule3(j).Value + 1

Pour moi, cellule3(j).value ne veut rien dire.
D'ailleurs, si tu écris cellule3(j).select ==> il y aura une erreur dans vba

soit tu veux dire :
cellule3.value = cellule3.value +1

soit tu veux dire
cells(i,j).value = cells(i,j)+1
==> la cellule de la ligne i et de la colonne j = cellule de la ligne i et de la colonne j +1

A moins que je sois ignorante et que ca signifie vraiment quelque chose.
0
tommyls1 Messages postés 2 Date d'inscription mercredi 24 juillet 2013 Statut Membre Dernière intervention 25 juillet 2013
25 juil. 2013 à 12:43
Merci Melanie1324 c'était effectivement ça...des restes d'algorithmiques que je n'ai pas vu mais je m'en suis rendu compte en envoyant le post!

Bref tout va mieux là, pour le reste tu te trompes, mon code marche bien et le fait de mettre (j) permet une boucle et les itérations...

A plus!
0