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 :

[VBA-E] Automatisation Variable


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2007
    Messages : 89
    Par défaut [VBA-E] Automatisation Variable
    Bonjour,

    Je créer actuellement un fichier excel qui vise à recenser différentes informations et ensuite faire différents calculs.

    J'essai donc de créer une macro qui insère des lignes en fonction du nombre d'étapes dont j'ai besoin.

    Donc j'ai une Cbo avec le nombre d'étapes désirée (entre 1 - 14 ) et ensuite en fonction de ça je "Unhide" les cellules dont j'ai besoin.

    Mon problème est que j'ai du mal automatiser le "Hide" / "Unhide" pour que les cellules dont j'ai besoin s'affichent, pour l'instant tout est très basique...

    Mon Code :

    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
    Sub unhide_milestones()
     
     Application.ScreenUpdating = False
     
        If ThisWorkbook.ActiveSheet.Range("D20").Value = 1 Then
     
                Sheets("Workplan").Select
                Rows("7:13").Select
                Selection.EntireRow.Hidden = False
     
     
                Sheets("Workplan").Select
                Rows("13:97").Select
                Selection.EntireRow.Hidden = True
     
         End If
     
     
        If ThisWorkbook.ActiveSheet.Range("D20").Value = 2 Then
     
           Sheets("Workplan").Select
           Rows("7:20").Select
           Selection.EntireRow.Hidden = False
    Bref j'en ai 14 comme ça mais comme pour l'instant mon automatisation ne fonctionne pas alors c'est mieux que rien...

    Et deuxième petite chose, comment puis-je faire pour que la macro s'execute quand je choisi un valeur dans ma combo box? Pour l'instant, je choisis une valeur, qui est liée à une cellule et en cliquant sur un bouton d'action, la macro vérifie le nombre dans la cellule puis déclenche le nombre de ligne à intégrer ... Moi qui aime bien le code claire, là je suis honteux !

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Select ThisWorkbook.ActiveSheet.Range("D20").Value
         Case 1
                Sheets("Workplan").Rows("7:13").EntireRow.Hidden = False
         Case 2
                Sheets("Workplan").Rows("13:97").EntireRow.Hidden = False
    Au fait, pendant que j'y suis "hide" c'est Masquer et "Unhide" enlever le masque ou dé-masquer. J'ai dû lire le code pour comprendre que l'instruction Hide appliquée à une cellule n'avait pas été inventée pendant que je tournais le dos
    Pour ta seconde question, je regarde

  3. #3
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Citation Envoyé par En 2, tu
    Et deuxième petite chose, comment puis-je faire pour que la macro s'execute quand je choisi un valeur dans ma combo box? Pour l'instant, je choisis une valeur, qui est liée à une cellule et en cliquant sur un bouton d'action, la macro vérifie le nombre dans la cellule puis déclenche le nombre de ligne à intégrer ...
    Elle est où cette combo ? Dans la feuille de calcul ? Créé à partir de quelle Barre de contrôles ? Outils ou formulaire ?
    Où bien se trouve-t-elle dans un userform ?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2007
    Messages : 89
    Par défaut
    Merci pour cette réponse,

    Dsl pour le Hide / Unhide je n'ai jamais utilisé Excel en Français.. Merci pour la traduction

    J'essayais d'utiliser Select Case depuis un moment mais j'avais des problèmes.

    Pour la Combo, je n'ai pas de formulaire, c'est juste un objet dans une feuille de calcul, les données sont simplement dans cette même feuille sous forme de liste, je peux aussi l'insérer en VBA, peut m'iporte !

    Le truc c'est juste qu'au lieu de passer par la cellule D20 je voudrais directement selectionner la combo box et que la macro s'execute.

    Cependeant à chaque fois que la macro s'execute, Excel va directement à l'endroit ou l'action a eu lieu... Et je n'arrive pas à rester sur la même feuille malgré l'application de la macro...

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Tu vas nous la montrer cette macro ?
    ......................

  6. #6
    Membre Expert
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 567
    Détails du profil
    Informations personnelles :
    Âge : 62
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 567
    Par défaut
    on va trouver du select

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2007
    Messages : 89
    Par défaut
    Hello,

    Désolé petit problème au boulot hier du coup pas le temps de répondre,

    Ma macro maintenant que gentillement ouskel'nor me l'a améliorée est celle là :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Select ThisWorkbook.ActiveSheet.Range("D20").Value
     
     Case 1
                Sheets("Workplan").Rows("7:13").EntireRow.Hidden = False
                Sheets("Workplan").Rows("13:97").EntireRow.Hidden = True
    Case 2
                Sheets("Workplan").Rows("7:20").EntireRow.Hidden = False
                Sheets("Workplan").Rows("21:97").EntireRow.Hidden = True
    ' Je vous Epargne les 14 autres cas...
    Le but est très simple, je souhaite dé-masquer (merci ouskeln'or !) 7 lignes par 7 lignes et inversement masquer 'celles dont je n'ai pas besoin. Si 3 est selectioné alors je dé-masque les 21 première lignes et masque le reste...

    Donc très basic, le fait est que lorsque que j'essai de choisir ma Combo Box qui s'appel "cbomilestones" ca me met "Object Required".

    Ce qui est bizare c'est que même lorsque je définis cette objet as String ou autre ca passe pas... Alors pour l'instant je stock cette valeur dans une cellule du feuille "LookUpTable" et j'active la macro.. Au fond ce n'est pas essentiel mais pkoi avoir un code super lourd qd je peux avoir un bcp plus simple ??? (Enfin

    Sinon je pense pouvoir créer un bouton qui activera toutes les macros présente sur ma première feuille en même temps... Je ne suis pas fou ca peut se faire ??

  8. #8
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Tu as lu mes question,
    Ça sert à quoi que l'autre il se décarcasse à poser des questions... Il vient d'où ton combo ?
    Citation Envoyé par Tu
    Pour la Combo, je n'ai pas de formulaire, c'est juste un objet dans une feuille de calcul, les données sont simplement dans cette même feuille sous forme de liste, je peux aussi l'insérer en VBA, peut m'importe !
    A moi, pour te répondre, ça m'importe beaucoup ! Ce n'est pas une liste dans une cellule ? Si c'est un "vrai" combo, tu l'as bien pris quelque part, non ? Dans qu'elle barre d'outils ?

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Janvier 2007
    Messages : 89
    Par défaut
    Hum alors si ça importe beaucoup je vais te répondre !

    Le Combo je l'ai inséré à partir de la barre d'outils "Form" (je pense "Formulaire" en Francais).

    Les Données proviennent d'une liste qui est présente dans une feuille cachée.

    Voilà !

    un grand merci d'avance,

  10. #10
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Ouf !
    Donc tu peux associer du code à ta combo. Fais deux clics dessus, en mode création et ça va t'ouvrir des horizons nouveaux

    J'ajoute que depuis "Private Sub ComboBox1_Click()" tu peux appeler une macro placée "ailleurs", comme dans un module par exemple

Discussions similaires

  1. Réponses: 3
    Dernier message: 09/04/2006, 09h10
  2. [VBA-E] pb variables globales reinitialisées...
    Par borisa dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 07/03/2006, 14h57
  3. [VBA-E]Problème Variable/Graphique
    Par 47-47 dans le forum Macros et VBA Excel
    Réponses: 32
    Dernier message: 21/02/2006, 10h34
  4. [VBA]Passer une variable dans une formule Excel
    Par David1974 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 27/01/2006, 16h52
  5. [VBA excel] une variable pour 2 classeurs
    Par totoche dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 05/01/2006, 09h42

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