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 :

Décaler l'ensemble des formules d"une macro


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2015
    Messages : 43
    Points : 18
    Points
    18
    Par défaut Décaler l'ensemble des formules d"une macro
    Bonjour,

    J'ai crée une Userform, j'ai un code qui marche bien qui me traite des données. J'aimerai lorsque je clique sur un autre bouton de l'userform que je puisse relancé mon code mais que toutes les formules (dans mon code) soit décalé à la suite de ce que j'ai déjà traité.
    Par exemple sur l'image suivante j'aimerai repartir à la colonne N sans avoir à rechanger tout mon code (sachant que mon nombre de colonne et ligne peut varier suivant les données que je traite).

    J'espère être compréhensible
    Nom : Capture.JPG
Affichages : 171
Taille : 18,1 Ko

    En vous remerciant par avance.

  2. #2
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 073
    Points : 9 853
    Points
    9 853
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    euh, pas super compréhensible malheureusement

    peut être qu'avec le code on y verrait plus clair ? Voir un peu plus de précision dans la façon de décrire.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2015
    Messages : 43
    Points : 18
    Points
    18
    Par défaut
    J'ai plusieurs code de ce type là, à la suite.

    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
    For a = 5 To Profondeurson Step 2
     
    Cells(a, 5).Select
    With Selection.Borders(xlEdgeTop)
            .LineStyle = xlContinuous
            .ColorIndex = xlAutomatic
            .TintAndShade = 0
            .Weight = xlMedium
    End With
    Next
    Dim b As Integer
    b = 0
    While b <= Profondeur * 4
    Cells(b + 5, 4).Value = b * 0.25
    b = b + 2
    Wend
    Il faudrait donc que lorsque je clique sur un bouton de l'userform ce code puisse s'appliquer à Cells(a,5+le nombre de ligne déjà occupées +2 par exemple). J'aimerai qu'à chaque fois que je reclique sur ce bouton ça se décale automatiquement.

    J'espère avoir été plus clair.

  4. #4
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Petite amélioration de ton code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Dim a As Integer
    For a = 5 To Profondeurson Step 2
        With Cells(a, 5).Borders(xlEdgeTop)
            .LineStyle = xlContinuous
            .ColorIndex = xlAutomatic
            .TintAndShade = 0
            .Weight = xlMedium
        End With
    Next a
     
    For a = 0 to Profondeur * 4 Step 2
        Cells(a + 5, 4).Value = a * 0.25
    Next a
    Est-il normale que les limites des boucles soit différentes (Profondeurson et Profondeur * 4) ?
    Parce que j'ai la nette impression qu'il y a une forte relation entre les deux et qu'il serait possible d'écrire une seule boucle For.

    Pour la fonction que tu souhaites, ceci devrait faire l'affaire (même si, en aveugle, ce n'est pas évident de comprendre ce que tu souhaites) :
    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
    Dim a As Integer, Der As Integer
     
    Der = Cells(5,Columns.Count).End(xlToLeft).Row
     
    For a = 5 To Profondeurson Step 2
        With Cells(a, Der+3).Borders(xlEdgeTop)
            .LineStyle = xlContinuous
            .ColorIndex = xlAutomatic
            .TintAndShade = 0
            .Weight = xlMedium
        End With
    Next a
     
    For a = 0 to Profondeur * 4 Step 2
        Cells(a + 5, Der+2).Value = a * 0.25
    Next a
    Tu auras peut-être à ajuster le +2 et le +3.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

Discussions similaires

  1. [SP-2010] Ensemble des Tâches assignées dans une même liste
    Par Gratiano dans le forum SharePoint
    Réponses: 6
    Dernier message: 18/04/2014, 13h14
  2. [XL-2007] entrer des formules en utilisant une macro
    Par Fred4345 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 30/11/2011, 20h26
  3. Stocker des formules mathématiques dans une table
    Par charad dans le forum Outils
    Réponses: 1
    Dernier message: 25/09/2009, 19h31
  4. Réponses: 5
    Dernier message: 27/06/2008, 14h48
  5. Calcul de l'ensemble des sous-séquences d'une chaîne
    Par Bobez42 dans le forum Débuter
    Réponses: 5
    Dernier message: 11/06/2008, 19h02

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