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 :

Plage de données dynamiques


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    autre
    Inscrit en
    Décembre 2019
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Décembre 2019
    Messages : 23
    Par défaut Plage de données dynamiques
    Bonjour,

    je bloque sur un problème de plages de données.

    J'ai un petit script VBA qui me génère des tableaux de la forme suivante:
    Nom : tablo.PNG
Affichages : 352
Taille : 30,9 Ko

    En gros le script génère le premier tableau "A4:L9" puis le copie colle le nombre de fois nécéssaire en fonction d'une variable "nombretableaux".

    Maintenant, j'aimerais mettre en place une règle de mise en forme conditionnelle sur certaines cases de ces tableaux. Sur l'exemple, la première règle sera sur les plages =$B$6:$L$8;$B$13:$L$15;$B$20:$L$22;$B$27:$L$29, et la deuxième sur la plage =$B$9:$L$9;$B$16:$L$16;$B$23:$L$23;$B$30:$L$30. Le problème c'est que cette plage change en fonction du nombre de tableau et que je n'arrive pas à voir comment générer dynamiquement une plage.

    Si quelqu'un a une piste, ça m'aiderait grandement!

    Bonne soirée

  2. #2
    Membre Expert
    Inscrit en
    Septembre 2007
    Messages
    1 142
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 142
    Par défaut
    Bonjour,
    Citation Envoyé par thesus_size Voir le message
    Maintenant, j'aimerais mettre en place une règle de mise en forme conditionnelle sur certaines cases de ces tableaux.
    Si tu mets tes MFC sur la première plage, ensuite la copie te copiera aussi la MFC sans aucun calcul.

  3. #3
    Membre averti
    Homme Profil pro
    autre
    Inscrit en
    Décembre 2019
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Décembre 2019
    Messages : 23
    Par défaut
    Citation Envoyé par anasecu Voir le message
    Bonjour,


    Si tu mets tes MFC sur la première plage, ensuite la copie te copiera aussi la MFC sans aucun calcul.
    Oui, mais j'ai une MFC différente pour chaque tableau, alors que j'aimerais que ce soit la même MFC pour tous les tableaux. En gros c'est pour mettre en couleur la valeur la plus petite de tous les tableaux.

  4. #4
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 564
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 564
    Par défaut
    RE

    Phrase ambiguë

    La valeur la plus petite des données de l'ensemble des tableaux ou par tableau ?

    Donne un exemple car avec des cellules vides c'est très abstrait

  5. #5
    Membre averti
    Homme Profil pro
    autre
    Inscrit en
    Décembre 2019
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : autre

    Informations forums :
    Inscription : Décembre 2019
    Messages : 23
    Par défaut
    Citation Envoyé par 78chris Voir le message
    RE

    Phrase ambiguë

    La valeur la plus petite des données de l'ensemble des tableaux ou par tableau ?

    Donne un exemple car avec des cellules vides c'est très abstrait
    Exemple ici:
    Nom : tablo exemple.PNG
Affichages : 343
Taille : 22,0 Ko

    La même MFC est appliquée sur les trois premières lignes du premier et du second tableau. Une deuxième MFC (même règle => valeur minimum de la sélection) est appliquée à la dernière ligne des deux tableaux.

    Je vais essayer d'utiliser du pseudo-code pour expliciter ce qui me tracasse:

    Pour le nombre de tableau généré:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Pour le nombre de tableau généré:
        Créer une plage de sélection comportant les trois premières lignes de chaque tableau
            Appliquer MFC = la plus petite valeur de la sélection est mise en forme
        Créer une 2nd plage de sélection comportant la dernière ligne de chaque tableau
             Appliquer MFC = la plus petite valeur de la sélection est mise en forme
    J'imagine que je devrais arriver à quelque chose comme ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Set BigRange = Union(Range(Cells(6, 2), Cells(8, 12)), Range(Cells(13, 2), Cells(15, 12)))
                    BigRange.FormatConditions.AddTop10
                    BigRange.FormatConditions(BigRange.FormatConditions.Count).SetFirstPriority
    Mais je ne vois pas comment créer "dynamiquement" (en fonction d'une variable quoi), ces plages.

    Merci d'avance

  6. #6
    Membre Expert
    Inscrit en
    Septembre 2007
    Messages
    1 142
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 142
    Par défaut
    Bonsoir,
    Citation Envoyé par thesus_size Voir le message
    La même MFC est appliquée sur les trois premières lignes du premier et du second tableau. Une deuxième MFC (même règle => valeur minimum de la sélection) est appliquée à la dernière ligne des deux tableaux.
    Sur ton premier tableau que tu veux copier, après l'avoir généré, tu rajoutes la MFC puis tu fais tes copies et tes MFC seront correctes sur tous les tableaux.
    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
        With Range("B5:L7")
            .FormatConditions.AddTop10
            With .FormatConditions(1)
                .TopBottom = xlTop10Bottom
                .Rank = 1
            End With
            .FormatConditions(1).Interior.Color = 5296274 ' à modifier
        End With
        With Range("B8:L8")
            .FormatConditions.AddTop10
            With .FormatConditions(1)
                .TopBottom = xlTop10Bottom
                .Rank = 1
            End With
            .FormatConditions(1).Interior.Color = 5296274 ' à modifier
        End With

  7. #7
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 564
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 564
    Par défaut
    BOnjour

    Teste le numéro de ligne avec modulo pour la 1ere et =3 pour la seconde

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

Discussions similaires

  1. [XL-2013] Création d'une plage de donnée dynamique
    Par prostagma dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 25/06/2019, 17h59
  2. [XL-2007] Calcule de la valeur maximum d'une plage de données dynamique
    Par flo84316 dans le forum Excel
    Réponses: 2
    Dernier message: 10/05/2016, 09h49
  3. [XL-2007] Créer une plage de données dynamique
    Par capi81 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 23/07/2014, 21h12
  4. [XL-2010] Plage de données dynamique si valeurs copiées avec liaison
    Par moilou2 dans le forum Excel
    Réponses: 8
    Dernier message: 05/04/2013, 17h16
  5. [XL-2010] Plage de donnée dynamique pour graphique
    Par moilou2 dans le forum Excel
    Réponses: 3
    Dernier message: 07/03/2013, 18h51

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