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 :

[E-03] Réalisation de boucle


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 9
    Par défaut [E-03] Réalisation de boucle
    Bonjour,

    Je désire créer une boucle avec la macro suivante car je dois traiter une centaines de lignes sur plusieurs pages et je me vois mal taper une centaine de bloc pour chaque pages à modifier.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    ' Page 1
    ' Ligne 1
    Sheets("VIS").Range("H8").Formula = Sheets("trivis").Range("C1").Value
    Sheets("VIS").Range("P8").Formula = Sheets("trivis").Range("F1").Value
     
    ' Ligne 2
    Sheets("VIS").Range("H9").Formula = Sheets("trivis").Range("C2").Value
    Sheets("VIS").Range("P9").Formula = Sheets("trivis").Range("F2").Value
    Le but est d'incrémenter les coordonnées des cellules à chaque boucle, jusqu'à avoir 100 lignes.



    Pour information, le code de départ était du type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Range("H10:I10").Select
    ActiveCell.FormulaR1C1 = "=trivis!R[-7]C[-5]"
    Range("P10:R10").Select
    ActiveCell.FormulaR1C1 = "=trivis!R[-7]C[-10]"
    Code généré en automatique, que j'ai simplifié comme écrit plus haut.

    Merci de votre aide.

  2. #2
    Membre éclairé Avatar de zandru
    Homme Profil pro
    Ingénieur conception mécanique
    Inscrit en
    Mars 2008
    Messages
    507
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur conception mécanique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2008
    Messages : 507
    Par défaut
    Je l'écrirai plus simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for i = 8 to 100
        Sheets("VIS").cells(i,8)=Sheets("trivis").cells(i-7,3)
        Sheets("VIS").cells(i,21)=Sheets("trivis").cells(i-7,6)
    next

  3. #3
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Bonjour,

    Pour éviter de devoir relancer la procédure à chaque fois qu'une valeur change dans la feuille "trivis" (ce que propose zandru), tu peux essayer ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub test()
    Dim i As Integer
     
    For i = 8 To 100 '<-- de la ligne 8 à la ligne 100 (à adapter)
        Sheets("VIS").Cells(i, 8).Formula = "=trivis!" & Sheets("trivis").Cells(i - 7, 3).Address
        Sheets("VIS").Cells(i, 16).Formula = "=trivis!" & Sheets("trivis").Cells(i - 7, 6).Address
    Next
    End Sub

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 9
    Par défaut
    Merci à vous d'avoir répondu si rapidement, j'ai réussi à régler mon problème, j'ai finalement opté pour la première solution car normalement je n'ai besoin d'éxécuter la macro qu'une seule fois.

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

Discussions similaires

  1. Réaliser une boucle
    Par guigui69 dans le forum VBScript
    Réponses: 0
    Dernier message: 16/06/2010, 11h03
  2. Réponses: 2
    Dernier message: 12/04/2010, 17h14
  3. Comment réaliser une boucle pour remplir un tableau
    Par LVChatel dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 03/04/2009, 11h20
  4. réaliser une boucle pour afficher des sources
    Par cloridriks dans le forum Langage
    Réponses: 9
    Dernier message: 17/03/2008, 15h21
  5. réalise des boucles uml 1.4
    Par cyrilforever dans le forum UML
    Réponses: 6
    Dernier message: 07/12/2006, 22h27

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