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 :

Liste déroulante pour afficher masquer une courbe


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
    Ingénieur qualité méthodes
    Inscrit en
    Juillet 2017
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juillet 2017
    Messages : 65
    Par défaut Liste déroulante pour afficher masquer une courbe
    Bonjour à tous,

    J'ai déjà vu mon problème plusieurs fois mais je n'ai jamais trouvé comment l'adapter à mon fichier... En effet, je suis débutant en VBA et je vous avoue que le codage est pas trop mon fort voir pas du tout j'ai du mal dans la compréhension :/
    Du coup j'ai parcouru divers forum avec des personnes qui avaient à peu près le meme soucis que moi, j'ai essayer de masquer afficher des colonnes par exemple mais à chaque fois je n'arrive pas à adapter le code proposer du topic vers ma feuille...

    En résumé si c'est possible vu que c'est pour le boulot il me faudrait :
    - un formulaire en menu déroulant avec le nom des différentes séries du graph et fonction de si elles sont cochées ou non ça affiche la courbe
    - mettre ce formulaire de menu déroulant directement sur le graph
    -le graph possède à l'heure actuelle 6 séries de données et je pense qu'il en aura Deux supplémentaires prochainement.

    Si quelqu'un veut bien m'aider afin que je puisse comprendre le code associé si jamais je dois ajouter une ou deux séries de plus à l'avenir ou le transposer dans un autre fichier.

    Vous avez le fichier excel joint, en version simplifiée avec que trois séries (si j'arrive à comprendre pour trois je pense qu'il y en est 6 ou 10 ça sera pareil) j'utilise Excel 2013. Merci d'avance =)

    Jefferson

    Le fichier pour comprendre : Test.xlsx

  2. #2
    Membre Expert
    Femme Profil pro
    Ingénieur
    Inscrit en
    Octobre 2016
    Messages
    1 703
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Indre et Loire (Centre)

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

    Informations forums :
    Inscription : Octobre 2016
    Messages : 1 703
    Par défaut
    Bonjour et bienvenue au forum !
    Est-ce que dans le cas "la courbe ne s'affiche pas", c'est OK si la courbe "n'a pas de couleur" ?
    Je te propose une façon de faire, mais peut-être y a-t-il plus simple...
    Première étape :
    1. Tu créer une nouvelle feuille (nommons la "programme")
    2. Tu insères une case à cocher par série dans le graphique (onglet Développeur > Contrôles > Insérer > Controles de formulaire > Case à cocher).
    3. Tu lies à chaque case à cocher une cellule de la feuille programme. (A1,A2,A3)
    4. En face de ces cellules liées (en B1, B2, B3), tu écris le numero de la série à laquelle la case est liée.
    Deuxième étape :
    On va chercher le code qui permet de changer le trait d'une série donnée avec l'enregistreur de macro. Avec l'enregistreur de macro enregistre 2 macro :
    1. Macro qui permet d'afficher la courbe sans trait. (clique droit > remplissage de la courbe > Aucune couleur ou aucun trait)
    2. Macro qui permet de colorier la courbe selon la couleur que tu veux

    Ensuite, il faut adapter le code pour en faire une macro avec argument (l'argument étant le n° de la série) et adapter la macro obtenue par enregistreur de macro.
    Troisième étape:
    On créé la/les macros des cases à cocher.

    Essaie déjà de faire les étapes 1 & 2 et reviens vers nous.

  3. #3
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juillet 2017
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juillet 2017
    Messages : 65
    Par défaut
    Merci de ta réponse. Oui ça va très bien si elle disparait du graphique et non de la légende.
    Par contre je ne sais pas lier une formule à cocher avec une cellule... j'ai fouillé un peu sur le net j'ai trouvé cela, est-ce que ça va :

    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
    Option Explicit
     
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        'Restriction de la plage. Pour une feuille entière mettez une apostrophe en début de la ligne suivante
        If Intersect(Union([A2:A10], [D2:D10]), Target) Is Nothing Then Exit Sub 'plage A2:A10;D2:D10
        If Target.Count = 1 Or Target.MergeCells Then
            If Target.Font.Name = "Wingdings" Then
                With Target    'cellule "liée"
                    .Value = Abs(.Range("A1").Value - 1)
                    .NumberFormat = """þ"";General;""o"";@"
                    Application.EnableEvents = False
                    .Range("A1").Offset(, 1).Select
                    Application.EnableEvents = True
                End With
            End If
        End If
    End Sub
    Mais forcement je comprend pas trop ce qui est écrit à l'intérieur ...

  4. #4
    Membre Expert
    Femme Profil pro
    Ingénieur
    Inscrit en
    Octobre 2016
    Messages
    1 703
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Indre et Loire (Centre)

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

    Informations forums :
    Inscription : Octobre 2016
    Messages : 1 703
    Par défaut
    Ouïe, ouïe, tu ne m'as pas bien comprise.
    Fais la chose suivante :
    Place toi sur la feuille avec le graphique. Ensuite dans l'onglet développeur clique sur Controles>Insérer > Case à cocher :
    Nom : caseacocher.png
Affichages : 1771
Taille : 9,1 Ko
    Puis clique sur ton graphique pour ajouter la case à cocher. Ensuite, tu fais clique droit sur la case à cocher > Propriétés. Là tu verras qu'une des propriétés est "Cellule liée".
    Nom : celluleliee.png
Affichages : 1877
Taille : 12,9 Ko

    Tu fais une case à cocher par courbe.

  5. #5
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juillet 2017
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juillet 2017
    Messages : 65
    Par défaut
    Ok d'accord donc c'était bien tout simple... mais pour m'assurer j'ai essayé de vérifier en tapant sur Google et ça m'as envoyé vers de la VBA ^^
    Je fais le reste et reviens vers toi !

  6. #6
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juillet 2017
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juillet 2017
    Messages : 65
    Par défaut
    C'est ok, mes cellules liées A1-A3 avec en face B1-B3 mes trois séries correspondantes et enfin les deux enregistrements de macro pour afficher avec ou sans trait. Je te joins le fichier.

    Test.xlsm

  7. #7
    Membre Expert
    Avatar de cb_60
    Homme Profil pro
    Chargé de mission technique
    Inscrit en
    Juillet 2007
    Messages
    1 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Chargé de mission technique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 253
    Billets dans le blog
    14
    Par défaut
    Bonjour
    pas sur d'avoir besoin d'une macro, pour faire ce que tu souhaite si, j'ai bien compris
    une modification de tes zones nommées, de cette façon:
    heurezone =DECALER(Données!$E$3:$E$3;;;NB(Données!$E$3:$E$1048576))
    humiditePourc =SI(programme!$A$2=VRAI;DECALER(Données!$I$3;;;NB(Données!$I$3:$I$1048576));programme!$Q$1)
    temperaturedegC =SI(programme!$A$3=VRAI;DECALER(Données!$H$3;;;NB(Données!$H$3:$H$1048576));programme!$P$1)
    tempsPoussee =SI(programme!$A$1=VRAI;DECALER(Données!$G$3;;;NB(Données!$G$3:$G$1048576));programme!$P$1)
    Nom : Capture.PNG
Affichages : 1809
Taille : 22,5 Ko
    Fichiers attachés Fichiers attachés
    L'imagination est plus importante que le savoir.... A . Einstein. :pastaper:
    https://www.developpez.net/forums/blogs/179588-cb_60/
    Merci de cliquer sur :resolu:pour clore cette discussion.

  8. #8
    Membre Expert
    Avatar de cb_60
    Homme Profil pro
    Chargé de mission technique
    Inscrit en
    Juillet 2007
    Messages
    1 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Chargé de mission technique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 253
    Billets dans le blog
    14
    Par défaut
    re
    Les cases à cocher sont liées, aux cellules A1,A2,A3, de la feuille programme et a tu modifié, les zones nommées
    L'imagination est plus importante que le savoir.... A . Einstein. :pastaper:
    https://www.developpez.net/forums/blogs/179588-cb_60/
    Merci de cliquer sur :resolu:pour clore cette discussion.

  9. #9
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juillet 2017
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juillet 2017
    Messages : 65
    Par défaut
    La liaison oui ça c'est ok. Mais le reste ça donne ça dans le fichier et je comprend pas pk ...
    Test.xlsm

  10. #10
    Membre Expert
    Avatar de cb_60
    Homme Profil pro
    Chargé de mission technique
    Inscrit en
    Juillet 2007
    Messages
    1 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Chargé de mission technique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 253
    Billets dans le blog
    14
    Par défaut
    re
    Tu n'a pas modifié les zones nommées,
    formule
    gestionnaire de nom
    tu dois modifier les formules existantes, de la façon que je t'ai indiqué
    L'imagination est plus importante que le savoir.... A . Einstein. :pastaper:
    https://www.developpez.net/forums/blogs/179588-cb_60/
    Merci de cliquer sur :resolu:pour clore cette discussion.

  11. #11
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juillet 2017
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juillet 2017
    Messages : 65
    Par défaut
    Ok j'ai modifié les noms ça marche nickel ! Par contre seule différence avec toi c'est quoi quand tu décoches une série le texte de la série disparait sur le graph alors que moi non ... tu as fais quoi de plus ?

  12. #12
    Membre Expert
    Avatar de cb_60
    Homme Profil pro
    Chargé de mission technique
    Inscrit en
    Juillet 2007
    Messages
    1 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Chargé de mission technique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 253
    Billets dans le blog
    14
    Par défaut
    regarde les cellules B1,B2 et B3 de la feuille programme, dans les données du graphique j'utilise ces cellules pour afficher la légende du graph
    L'imagination est plus importante que le savoir.... A . Einstein. :pastaper:
    https://www.developpez.net/forums/blogs/179588-cb_60/
    Merci de cliquer sur :resolu:pour clore cette discussion.

  13. #13
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Juillet 2017
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juillet 2017
    Messages : 65
    Par défaut
    C'est tout bon j'avais pas vu cette subtilité que tu venais chercher le nom de la série du graph en colonne B !
    Je te remercie, je passe le sujet en résolu =)

Discussions similaires

  1. Réponses: 5
    Dernier message: 26/04/2016, 14h55
  2. [WD-2003] Macro pour afficher/masquer une barre d'outil précise
    Par bruxmu dans le forum VBA Word
    Réponses: 2
    Dernier message: 10/01/2016, 09h44
  3. Afficher/Masquer une courbe
    Par nilsmatlab dans le forum Interfaces Graphiques
    Réponses: 12
    Dernier message: 07/06/2011, 15h18
  4. Réponses: 2
    Dernier message: 01/09/2006, 00h02
  5. [composant] liste déroulante pour une propriété ?
    Par BoBoToTo dans le forum Composants VCL
    Réponses: 4
    Dernier message: 24/05/2004, 16h16

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