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][EXCEL]Goto a travers différent module


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé Avatar de Ania
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 155
    Par défaut [VBA][EXCEL]Goto a travers différent module
    Bonsoir tt le monde

    J'utilise un simple bouton sur ma feuille excel et je souhaite que lorsque l'on appuie sur le bouton, on puisse aller à un endroit précis de mon programme et bien sur commencer son exécution.

    Pour cela j'utilise la fonction Goto mais il y aune erreur puisque le label n'est pas défini.

    Est-il possible de le réaliser?
    Si oui qu'elle est la syntaxe? S'il vous plait

    Bonne soirée

  2. #2
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    non c'est pas possible... l'instruction Goto ne sert qu'as ce "déplacer" dans une procédure...
    Citation Envoyé par Aide en ligne Excel
    Remarques

    L'instruction GoTo ne peut effectuer un branchement que vers des lignes qui appartiennent à la procédure dans laquelle elle est utilisée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    mais tu peu trés bien appeller une procédure d'un classeur à l'autre.....
    Application.Run "Classeur1.xls!test"

  3. #3
    Membre confirmé Avatar de Ania
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 155
    Par défaut
    Je te remercie pour cette réponse,


    mais je ne trouve rien concernant la mise en oeuvre de cette solution, comment utilise-t-on ?

    peut-on les utiliser si les 2 procédures sont dans le même classeur?

    bonne soirée


    [edit..]

    je viens de comprendre, en fait il y a une erreur d'affichage
    Citation Envoyé par bbil
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    mais tu peu trés bien appeller une procédure d'un classeur à l'autre.....
    Application.Run "Classeur1.xls!test"
    il ya un décalage des balises et donc le vrai code est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.Run  "Classeur1.xls!test"
    et les instructions
    ne sont en fait que des émoticones

    par contre je ne sais pas si ca peut fonctioner puisque je souhaite lancer une procédure à un point précis
    une fois que le bouton a été pressé.
    Sachant que la procédure a déjà tournée une fois .

    bonne continuation

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    290
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 290
    Par défaut
    Bonsoir,
    Ta question est, Appuyer sur un bouton et me rendre dans un endroit précis de mon programme, si je comprend bien celà n'a rien à voir avec une macro se trouvant dans un autre classeur.
    Développe un peu stp.

    jpleroisse

  5. #5
    Membre confirmé Avatar de Ania
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 155
    Par défaut
    Bonsoir

    j'ai créé une procédure principale qui permet de faire une saisie de données puis de faire divers calcul et enfin procéder à un affichage sous excel.

    Je souhaite créer un bouton sur la feuille excel qui permettent de relancer le calcul ainsi que l'affichage sans repasser par la saisie des données

    dis moi si tu veux plus d'infos

    merci et bonne soirée

  6. #6
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    il faut commencer par diviser ta procédure principale en 2 ...

    une procédure saisie donnée et l'autre calcul...
    ....



    PS : désolé pour mon message précédent."décalé"..

  7. #7
    Membre Expert Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Par défaut
    Bonjour à tous, en ce vendredi chaud et ensoleillé à Paris...
    Je pensais exactement à la même chose que bbil: Divise la procédure complète en deux, la deuxième commençant là où tu voudrais qu'elle démarre avec le bouton, et à la fin de la première, fait un appel à la deuxième.
    Ainsi, dans le déroulement global, les 2 procédures s'enchainent comme si elles n'en faisaient qu'une, et dans l'événement "click" de ton bouton, tu fais un appel à la seconde.
    Comme ça, ça devrait fonctionner. C'est bien ce que tu voulais dire, bbil?

  8. #8
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    290
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 290
    Par défaut
    Bonjour,
    Ania, excuse moi de poser tant de questions, mais quand tu dis, faire le calcul sans changer les données, celà veut-il dire une données statique.
    Si range("A1") = 100, Range("A1") vaudra toujours 100 ???

    jpleroisse

  9. #9
    Membre confirmé Avatar de Ania
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 155
    Par défaut
    Bonjour

    je vous remercie pour la solution.

    Le problème est que je dois garder un tableau contenant toutes mes valeurs afin d'éviter d'avoir à toutes les ressaisir or avec cette méthode je ne peux conserver ce tableau en mémoire

    Je vous remercie déjà pour l'avancer que vous m'avez donné

    bonne journée

  10. #10
    Membre Expert Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Par défaut
    Je ne vois pas pourquoi? Qu'est-ce qui t'empêche de passer le tableau en paramètre de l'appel à la deuxième procédure? C'est parfaitement possible.

  11. #11
    Membre confirmé Avatar de Ania
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 155
    Par défaut
    Oui le problème n'est pas lors de la première exécution ou mon tableau est existant puis que l'on passe par une procédure de saisie des données qui permet de les garder dans la mémoire.

    Mais une fois que la macro est finie, si je lance ma procédure de calcul à l'aide du bouton, mon tableau de valeur n'est plus en mémoire, je ne peux donc pas faire mes calculs.

  12. #12
    Membre Expert Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Par défaut
    Heu, oui, mais bon, si je regarde ta question du début, c'était bien d'aller à un endroit du programme en cliquant sur un bouton. Comment comptais-tu résoudre ton problème de tableau pas en mémoire?
    Enfin bref, ce que tu veux faire est sans aucun doute possible, mais il faut que tu revois la cinématique "saisie-traitement".
    Courage!

  13. #13
    Membre confirmé Avatar de Ania
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 155
    Par défaut
    Il est vrai que ma question au début demandait comment aller directement dans une procédure.

    et donc je n'avais pas pris en compte ce problème ci.

    Est-il possible d'affecter à une feuille ou un classeur un tableau de type personnalisé ou est -on obligée de mettre toutes les valeurs dans des cellules et de les récupérer au moment ou on relance le calcul.

    suis-je assez clair??

  14. #14
    Membre Expert Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Par défaut
    Non, j'avoue que je ne comprend pas bien le problème.
    Les données de ton tableau, tu peux tout à fait les stocker dans un tableau "mémoire", pendant toute le durée de ton traitement. Mais à la fin du programme, elle seront "oubliées". Si tu veux les conserver, il faut bien les écrire quelque part, physisquement.
    Tu peux utiliser un fichier texte, mais le plus simple, c'est bien de les écrire sur une feuille de ton classeur Excel. Et si ce n'est pas beau, tu peux masquer cette feuille pour qu'elle n'apparaisse pas aux yeux de l'utilisateur.
    Mais je ne suis vraiment pas sûr de comprendre ce que tu veux faire exactement... Si tu voulais bien nous l'expliquer...

  15. #15
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Comment sais-tu tes valeurs ? n'y as t'il pas moyen d'utiliser les textbox... où autre pour stocker tes valeurs de calculs..

    Dis nous en plus sur le type de donnée source au calcul ... (type , nombre...) voir si cela nous donne une idée sur la façon de les stoker...

  16. #16
    Membre confirmé Avatar de Ania
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 155
    Par défaut
    En fait mon programme permet de faire des devis

    Dans un premier temps je saisie les données de toutes les pièces que je stocke dans un tableau de type personnalisée. Les variables sont :

    - le nom de la pièce
    - la surface
    - la hauteur sous plafond
    - le mode de chauffage
    - le GV
    ...

    je stocke toutes les données dans un tableau et j'en affiche certaines comme le nom, la surface et la hauteur

    Dans second temps je fais les calculs de dimensionnement et de choix du générateurs. Puis je procéde à l'affichage des résultat trouvés.

    Mais je souhaite que l'on puisse modifier le choix du type de générateur à l'aide d'une CheckBox et que l'on relance le calcul et l'affichage à l'aide d'un bouton tout en conservant les données de chaque pièces puisqu'elles servent au dimmensionnemnent de l'ensemble

    vous faut-il d'autres informations?

  17. #17
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    tu peu peu-être envisager de stocker tes données dans une feuille excel avec une colonne par élément de ta structure ..

    puis pour le calcul ...... Une liste de choix te permt de choisir la piéce à traiter ... ..etc ..etc ...

  18. #18
    Membre Expert Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Par défaut
    Oui, je suis ENCORE d'accord avec bbil. A la fin de ta saisie, stocke toutes les données dans un nouvel onglet Excel. Si tu ne veux pas qu'il se voit, il te suffit de le masquer.
    Ensuite, pour toutes les étapes suivantes, quel que soit l'ordre dans lequel tu veux les effectuer, tu n'auras plus qu'à 'piocher' dans ce tableau caché.

  19. #19
    Membre confirmé Avatar de Ania
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    155
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 155
    Par défaut
    Je vous remercie pour cette solution pour cette solution.

    Je m'excuse pour le retard mais je n'ai pas un accès à temps complet à internet. je n'y ai accès que lorsque je suis en stage c'est a dire 2 semaines sur 4

    Un grand MERCI encore à toutes l'équipe

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

Discussions similaires

  1. [VBA/Excel] Différent suivant certaines cases
    Par Myogtha dans le forum Access
    Réponses: 8
    Dernier message: 01/02/2007, 17h23
  2. [vba Excel ] Organisation Des Modules
    Par CIBOOX dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 26/01/2007, 11h30
  3. [VBA-Excel] renommer un module
    Par marsupilami34 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/12/2006, 12h03
  4. [VBA] Excel- Save un document dans 2 répertoires différents
    Par altarez dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 31/01/2006, 22h32
  5. [VBA Excel] différentes plages sur différentes feuilles
    Par loacast dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 30/11/2005, 13h41

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