VBA Sortie de boucle for
FL_1998
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
FL_1998 Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
FL_1998 Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis débutant sur VBA et j'essaie de créer un programme qui me donne une hauteur et une largeur associé à un débit dans un tableau de sélection.
Voici le programme :
Sub Recherchegrille()
For i = 5 To 25
For x = 3 To 10
If Cells(i, x) > Range("D33").Value Then
Range("E33").Value = Cells(4, x)
Range("F33").Value = Cells(i, 2)
Exit For
Exit For
End If
Next
Next
End Sub
Avec ce programme, j'ai créé deux boucles. Une qui va balayer les lignes du tableau et une autre qui va balayer les colonnes.
Ensuite, j'applique ma condition qui va venir comparer chacune des cellules du tableau avec une cellule rempli manuellement. Quand une cellule est plus grande que ma valeur rempli manuellement, deux cellules vont prendre les largeur et hauteur associés à la valeur du tableau.
Mon soucis survient quand je veux sortir de la boucle. Je n'ai pas de messages d'erreurs mais le exit for ne fonctionne pas pour la première boucle. Elle continue de tourner et ne s'arrête pas lorsque que la conditions est remplis.
Quelqu'un aurait-il une idée ?
Merci de votre aide.
Je suis débutant sur VBA et j'essaie de créer un programme qui me donne une hauteur et une largeur associé à un débit dans un tableau de sélection.
Voici le programme :
Sub Recherchegrille()
For i = 5 To 25
For x = 3 To 10
If Cells(i, x) > Range("D33").Value Then
Range("E33").Value = Cells(4, x)
Range("F33").Value = Cells(i, 2)
Exit For
Exit For
End If
Next
Next
End Sub
Avec ce programme, j'ai créé deux boucles. Une qui va balayer les lignes du tableau et une autre qui va balayer les colonnes.
Ensuite, j'applique ma condition qui va venir comparer chacune des cellules du tableau avec une cellule rempli manuellement. Quand une cellule est plus grande que ma valeur rempli manuellement, deux cellules vont prendre les largeur et hauteur associés à la valeur du tableau.
Mon soucis survient quand je veux sortir de la boucle. Je n'ai pas de messages d'erreurs mais le exit for ne fonctionne pas pour la première boucle. Elle continue de tourner et ne s'arrête pas lorsque que la conditions est remplis.
Quelqu'un aurait-il une idée ?
Merci de votre aide.
A voir également:
- VBA Sortie de boucle for
- Downloader for pc - Télécharger - Téléchargement & Transfert
- Airpods 3 date de sortie - Guide
- Remettre un pc en sortie d'usine - Guide
- Office 2024 date de sortie - Accueil - Bureautique
- Samsung a33 date de sortie - Guide
2 réponses
Bonjour
Essaies ceci
Cdlmnt
Essaies ceci
Sub Recherchegrille() fini = False For i = 5 To 25 For x = 3 To 10 If Cells(i, x) > Range("D33").Value Then Range("E33").Value = Cells(4, x) Range("F33").Value = Cells(i, 2) fini = True Exit For End If Next x If fini Then Exit For Next i End Sub
Cdlmnt
Bonjour,
Exit Sub dans la deuxieme boucle a la place des Exit For
Exit Sub dans la deuxieme boucle a la place des Exit For
Pourquoi les deux Exit For ne fonctionne pas ?
Voir ci-dessous
Le premier for sort de la boucle x, du coup le deuxième n'est jamais atteint
Donc le deuxième doit être entre les deux Next !
Au passage tu devrais préciser dans tes next, de quelle boucle il s'agit, ça t'aurais peut être permis de détecter l'erreur
> f894009. un brin frisquet ce matin mais ça roule ;-)
Cdlmnt
Voir ci-dessous
Le premier for sort de la boucle x, du coup le deuxième n'est jamais atteint
Donc le deuxième doit être entre les deux Next !
Au passage tu devrais préciser dans tes next, de quelle boucle il s'agit, ça t'aurais peut être permis de détecter l'erreur
> f894009. un brin frisquet ce matin mais ça roule ;-)
Cdlmnt
Ca roule?
Je ne vous avais point vu.
Cela fonctionne