IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Retour à la ligne dans une boucle


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 106
    Points : 57
    Points
    57
    Par défaut Retour à la ligne dans une boucle
    Salut tout le monde,

    Voilà, j'ai une plage à remplir de L colonnes sur H lignes.
    Dans chaque cellule de ma plage je veux mettre un numéro : 1 dans la première, 2 dans la suivante et ainsi de suite sauf que quand j'arrive à la dernière cellule de ma ligne, je veux continuer la numérotation sur la ligne suivante au début de la ligne.

    J'ai essayé avec des boucles imbriquées mais sans succés :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    L = Sheets("Feuil1").Range("N1").Value
    H = Sheets("Feuil1").Range("N2").Value
    T = Sheets("Feuil1").Range("N3").Value
     
    For n = 1 To H
        For j = 1 To T
            For i = 1 To L
            Cells(n, i).Value = j
            Next i
     
        Next j
     
    Next n
    J'ai ensuite essayé via une variable tableau, je pense que ça pourrait simplifier le code mais je suis encore trop nul pour ça.


  2. #2
    Membre régulier Avatar de DidierLoche
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 84
    Points : 105
    Points
    105
    Par défaut
    Bonsoir,

    Est-ce cela correspond à ton besoin ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Col_max = Sheets("Feuil1").Range("N1").Value
    Ligne_max = Sheets("Feuil1").Range("N2").Value
     
    Valeur = 1
    For ligne = 1 To Ligne_max
            For col = 1 To Col_max
                Cells(ligne, col).Value = Valeur
                Valeur = Valeur + 1
            Next col
    Next ligne
    Didier

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Novembre 2008
    Messages : 16
    Points : 17
    Points
    17
    Par défaut
    Bonjour DidierLoche,
    voici un exemple qui répondra, je le crois, à vos exigences. Voyez si cela vous convient.

    Cordialement,

    Étienne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    Sub test()
     
    'Vous pouvez modifier les limites à votre guise.
    LimiteDroite = 13 'Colonne M
    LimiteBas = 10 'Ligne 10
     
    Cells(1, 1).Value = 1
     
    For i = 1 To LimiteBas
     
        For j = 2 To LimiteDroite
            If Cells(i, j - 1).Value = 1 Then
                Cells(i, j).Value = 2
            Else
                Cells(i, j).Value = 1
            End If
        Next j
     
     
        If Cells(i, LimiteDroite).Value = 1 Then
            Cells(i + 1, 1).Value = 2
        Else
            Cells(i + 1, 1).Value = 1
        End If
     
    Next i
     
    Cells(LimiteBas + 1, 1).Value = ""
     
    End Sub
    Mes excuses,
    le message s'adressait à Buhrne et non pas à vous DidierLoche ! Nos réponses se sont entrecroisées !

    Bonne soirée !

    Étienne

  4. #4
    Membre du Club
    Inscrit en
    Avril 2007
    Messages
    106
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 106
    Points : 57
    Points
    57
    Par défaut
    Thanks à vous 2!!

    En fait j'avais bien essayé ta soluce DidierLoche, j'avais à peu de chose près déjà essayer ce code, sauf que ma logique n'était pas bonne.

    J'avais placé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    valeur = valeur +1
    en dehors de la seconde boucle
    Du coup ça ne fonctionnait pas.

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [CSS] Empecher le retour à la ligne dans une cellule
    Par pekka77 dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 26/02/2009, 16h50
  2. [Debutant] Retour à la ligne dans une boucle
    Par Boub.J dans le forum Langage
    Réponses: 10
    Dernier message: 17/08/2008, 18h41
  3. [VB.NET] Enlever les retours à la ligne dans une string
    Par adrix26 dans le forum Windows Forms
    Réponses: 6
    Dernier message: 09/01/2007, 23h27
  4. Retour à la ligne dans une zone de text
    Par hnb2003 dans le forum Access
    Réponses: 2
    Dernier message: 13/04/2006, 11h56
  5. Pb retour de ligne dans une balise DT
    Par lord_paco dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 12/12/2005, 17h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo