Saut de boucle For Next

Bonjour,

j'aimerais savoir si je pouvais sauter une boucle ( en gros ne pas prendre la valeur n mais la n+1)

If Nbdepanneaux > Sheets("Données_d'entrée").Cells(c, 3).Value Then
                       Nbdepanneaux = Sheets("Données_d'entrée").Cells(c, 3).Value

j'aimerais savoir si quand le code ci-dessus est correct (dans la partie "PERMET DE SAVOIR LE NOMBRE DE PANNEAUX QUE JE PEUX RENTRER...), je peux sauter une valeur dans le For Next situé dans une autre partie ?

En espérant avoir été clair.

Sub Modification_NON()
Dim Nbdepanneaux As Integer
Nbdepanneaux = 0
Dim c As Integer

    For c = 8 To (Nombre_de_ligne.TextBox1.Value + 7)

        If Sheets("Données_d'entrée").Cells(c, 11).Value <> "" Then

                Dim x As Integer
            Do Until Sheets("Données_d'entrée").Cells(c, 11).Value * x > (Sheets("Données_d'entrée").Cells(c, 3).Value - Nbdepanneaux)
                x = x + 1
            Loop
            r = x - 1

MsgBox r & " valeur de colis par type"

'---------- PARTIE POUR TROUVER LE NOMBRE DE PANNEAU ENTIER QU'ON PEUT CREER PAR TYPE DE PANNEAUX-------------------------

            x = x + (5 - 1)
            Z = 6
          While Sheets("Colisage").Cells(Z, 2).Value <> ""
            Z = Z + 1
            x = x + 1
          Wend

            For a = Z To x
                    Sheets("Colisage").Cells(a, 2).Value = a - 5
            Next a
        Z = 0
        x = 0

'-----------------------------------------------------------------------------------------------------------------------------------------------
'-------------------------------------------CALCUL DU NOMBRE DE PANNEAUX DE TYPE 2 A RAJOUTER---------------------------------------------------
                    Dim Nbpanneauxrestant As Integer
                    Dim Largeurcolisrestante As Integer

                    If Sheets("Données_d'entrée").Cells(c, 11).Value * r = Sheets("Données_d'entrée").Cells(c, 3).Value Then 'rajouter le cas où tout les panneaux sont ajouter dans le colis incomplet

                    Else

'------------------------------------PERMET DE CALCULER LA LARGEUR RESTANTE POUR COMPLETER LE COLIS--------------------------------------

                        Nbpanneauxrestant = Sheets("Données_d'entrée").Cells(c, 3).Value - Sheets("Données_d'entrée").Cells(c, 11).Value * r
                        Largeurcolisrestante = Sheets("Données_d'entrée").Cells(6, 13).Value - 190 * Nbpanneauxrestant
                        MsgBox Largeurcolisrestante & " Largeur de colis pour complêter"

'-----PERMET DE SAVOIR LE NOMBRE DE PANNEAU QUE JE PEUX RENTRER DANS LE COLIS ET SI CELA CORRESPOND AVEC LE NOMBRE DE PANNEAUX DISPO------
                        y = c + 1
                       Nbdepanneaux = Format(Largeurcolisrestante / Sheets("Données_d'entrée").Cells(y, 6).Value, "0")

                       If Nbdepanneaux > Sheets("Données_d'entrée").Cells(c, 3).Value Then
                       Nbdepanneaux = Sheets("Données_d'entrée").Cells(c, 3).Value

                       Else
                       Nbdepanneaux = Nbdepanneaux
                       End If

                       MsgBox Nbdepanneaux & " nombre de panneaux nécessaire pour compléter"

Bonjour Arthur,

Sans fichier ni code entier

If Nbdepanneaux > Sheets("Données_d'entrée").Cells(c, 3).Value Then
    Nbdepanneaux = Sheets("Données_d'entrée").Cells(c, 3).Value
    Exit For
End If

A+

Etant sur l'ordinateur de ma boite, je ne préfère pas partager ni ouvrir d'Excel.

Voici par contre le code en entier :

Sub Modification_NON()
Dim Nbdepanneaux As Integer
Nbdepanneaux = 0
Dim c As Integer

    For c = 8 To (Nombre_de_ligne.TextBox1.Value + 7)

        If Sheets("Données_d'entrée").Cells(c, 11).Value <> "" Then

                Dim x As Integer
            Do Until Sheets("Données_d'entrée").Cells(c, 11).Value * x > (Sheets("Données_d'entrée").Cells(c, 3).Value - Nbdepanneaux)
                x = x + 1
            Loop
            r = x - 1

MsgBox r & " valeur de colis par type"

'---------- PARTIE POUR TROUVER LE NOMBRE DE PANNEAU ENTIER QU'ON PEUT CREER PAR TYPE DE PANNEAUX-------------------------

            x = x + (5 - 1)
            Z = 6
          While Sheets("Colisage").Cells(Z, 2).Value <> ""
            Z = Z + 1
            x = x + 1
          Wend

            For a = Z To x
                    Sheets("Colisage").Cells(a, 2).Value = a - 5
            Next a
        Z = 0
        x = 0

'-----------------------------------------------------------------------------------------------------------------------------------------------
'-------------------------------------------CALCUL DU NOMBRE DE PANNEAUX DE TYPE 2 A RAJOUTER---------------------------------------------------
                    Dim Nbpanneauxrestant As Integer
                    Dim Largeurcolisrestante As Integer

                    If Sheets("Données_d'entrée").Cells(c, 11).Value * r = Sheets("Données_d'entrée").Cells(c, 3).Value Then 'rajouter le cas où tout les panneaux sont ajouter dans le colis incomplet

                    Else
'------------------------------------PERMET DE CALCULER LA LARGEUR RESTANTE POUR COMPLETER LE COLIS--------------------------------------

                        Nbpanneauxrestant = Sheets("Données_d'entrée").Cells(c, 3).Value - Sheets("Données_d'entrée").Cells(c, 11).Value * r
                        Largeurcolisrestante = Sheets("Données_d'entrée").Cells(6, 13).Value - 190 * Nbpanneauxrestant
                        MsgBox Largeurcolisrestante & " Largeur de colis pour complêter"

'---PERMET DE SAVOIR LE NOMBRE DE PANNEAU QUE JE PEUX RENTRER DANS LE COLIS ET SI CELA CORRESPOND AVEC LE NOMBRE DE PANNEAUX DISPO------
                      y = c + 1
                       Nbdepanneaux = Format(Largeurcolisrestante / Sheets("Données_d'entrée").Cells(y, 6).Value, "0")

                       If Nbdepanneaux > Sheets("Données_d'entrée").Cells(c, 3).Value Then
                       Nbdepanneaux = Sheets("Données_d'entrée").Cells(c, 3).Value

                       Else
                       Nbdepanneaux = Nbdepanneaux
                       End If

                       MsgBox Nbdepanneaux & " nombre de panneaux nécessaire pour compléter"

'------------------------------PERMET DE SAVOIR LE NOMBRE DE PANNEAUX DE TYPE 2 QU'IL ME RESTE APRES COMPLETEMENT---------

                    End If
'-------------------------------------------------------------------------------------------------------------------------------
'-------------------------------------------------------------------------------------------------------------------------------

       Else
               MsgBox "La valeur entrée pour le nombre de panneaux par colis est nul ! " & Chr(10) & Chr(13) & "Veuillez rentrer une valeur numérique ou éxecuter la macro.", vbCritical + vbOKOnly, "Valeur incorrect"

       End If
    Next c
End Sub

Pour tout autre information, je reste à votre disposition.

Rechercher des sujets similaires à "saut boucle next"