Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

problème d'imbrication de boucles For...Next

  • Initiateur de la discussion Initiateur de la discussion milago
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

milago

XLDnaute Nouveau
Bonjour le forum,

Je souhaite imbriquer plusieurs boucles For....Next (4), mais le résultat est mitigé.

J'ai créé dans une feuille une matrice avec des machines en abscisses, et des produits en ordonnées. Pour chaque machine (donc pour chaque ligne), je coche les produits qui doivent être fabriqués par cette dernière. Une fois tous les produits répartis selon les machines, je veux que les choix pour chaque machine apparaissent dans une feuille (1 feuille par machine). Je veux faire une boucle qui répéte l'opération de copie des produits pour chaque feuille "machine", mais je n'arrive à copier qu'un produit par machine.

Voici un exemple de mon fichier.

Quelqu'un pourrait me montrer le principe d'imbrication des boucles For...Next ?

Merci
 

Pièces jointes

Re : problème d'imbrication de boucles For...Next

Salut,

je vois pas trop a quel résultat tu dois arriver mais je te donne une idée de comment je ferais le code a ta place !!


Code:
Sub cartman()
'je vois plutot ton pbl comme ca :)
' si je le fais a la main ca donne ca :

'je traite d abord les ligne de ta feuille 1
For x = 7 To 10
    'quand je suis sur 1 ligne il me faut regarder toute les colonnes
    For y = 2 To 17
        'ici je suis dans le tableau et je vais voir si la case que je regarde contient une croix
        If Cells(x, y) = x Then
        'ensuite je fais tout ce don j ai besoin la dedans vu que je suis dans une case avec une crois
        
        End If
    Next y
Next x

End Sub
 
Re : problème d'imbrication de boucles For...Next

Bonsoir
Pas vraiment coompris non plus, et encore moins où il faut recopier les données
Donc d'office dans la ligne 1 de la feuille concernée et donc sans doute à adapter
Code:
Sub machin()
Dim tablo() As Variant
With Sheets("Feuil1")
y = 1
    For Each Cel In .Range("A7:A10")
        For i = 1 To 16
            If .Cells(Cel.Row, i + 1) = "x" Then
            ReDim Preserve tablo(1 To y)
            tablo(y) = .Cells(6, i + 1)
            y = y + 1
            End If
        Next
        For j = 1 To UBound(tablo)
        Sheets(Cel.Value).Cells(1, j) = tablo(j) 'ligne à adapter
        Next
    Next
End With
End Sub
A+
kjin
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
671
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…