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 :

[VB] Interactions VB6->VBA-E


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 76
    Par défaut [VB] Interactions VB6->VBA-E
    Bonjour.

    Bon c'est un peu compliqué.

    J'ai une application VB6 qu'on appelera "Admin.exe". Cette application contient des interfaces permettant, à terme, de configurer entièrement une application VBA-E, appelons-là "Client.xls".

    Dans mon "Admin.exe", j'ai également des designer forms (concepteurs). En fait, ces forms, j'aimerai en faire des templates. Je m'explique.

    J'ai 2 designer forms appelées "template1" et "template2". A travers mes interfaces, l'utilisateur d'"admin.exe", pourra choisir un de ces 2 modèles, choisir l'intitulé de la form, personnaliser (dans certaines limites) son contenu (contenu d'une combobox entre autres), etc. Cette form est en fait destinée à être intégrée au "Client.xls".

    Une fois toute la configuration effectuée, l'utilisateur d'"Admin.exe" aura la possibilité de "générer" le "Client.xls".

    Donc à votre avis, intégrer dans un projet VBA-E des forms customisés à partir de templates contenues dans un projet VB6, c'est possible ou je rêve éveillé ?

    PS : Attention, les templates ne sont absolument pas modifiés ! Les informations de "personnalisation" saisies par l'utilisateur sont stockées quelque part, puis seront utilisées lors de la génération du fichier Excel...

    Tant que j'y suis, j'aimerai également savoir comment, à partir d'"Admin.exe", je pourrai créer/copier/écrire dans un module propre à "Client.xls". Ya-t-il possibilité de tripatouiller les macros d'un Excel depuis un EXE ?

    Merci.

  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
    Je réponds à ce que je sais...
    Citation Envoyé par tu
    Ya-t-il possibilité de tripatouiller les macros d'un Excel depuis un EXE ?
    Oui ! Mais c'est... pas prudent ? pas recommandé ? la galère ? une usine à gaz ?
    Tout dépend si tu veux modifier quelques paramètres ou une partie importante du code. Tu peux faire l'un et lautre mais pour tester en cas de modifs importantes du code, ce n'est pas le pied. Et là, c'est toi qui vois.

    Pour le reste, tu devras attendre qu'un spécialiste VB passe par là... ce qui ne saurait tarder

    A+

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 76
    Par défaut
    Citation Envoyé par ouskel'n'or
    Je réponds à ce que je sais...

    Oui ! Mais c'est... pas prudent ? pas recommandé ? la galère ? une usine à gaz ?
    Tout dépend si tu veux modifier quelques paramètres ou une partie importante du code. Tu peux faire l'un et lautre mais pour tester en cas de modifs importantes du code, ce n'est pas le pied. Et là, c'est toi qui vois.

    Pour le reste, tu devras attendre qu'un spécialiste VB passe par là... ce qui ne saurait tarder

    A+
    Salut.

    Ah nan la on parle vraiment de modifs importantes. En fait, je suis un peu dans une impasse car je dois développer une application quasimment totalement configurable.

    Or si l'on considère une application qui pourrait se paramètrer elle-même (et donc se modifier au cours de son exécution), niveau interprétation de code "à la volée", VB n'offre aucune solution convenable (dites-moi si je me trompe) : VBScript ne me convient absolument pas.

    C'est pourquoi j'ai envisagé de tronquer l'application en deux appli (l'une en VB6, l'autre VBA) quasi indépendantes l'une de l'autre... Je ne vois pas d'autre solution.

    Je suis un peu face aux limites techniques du langage...

  4. #4
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Par défaut
    C'est pourquoi j'ai envisagé de tronquer l'application en deux appli (l'une en VB6, l'autre VBA) quasi indépendantes l'une de l'autre
    solution sage !

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 76
    Par défaut
    Citation Envoyé par jmfmarques
    solution sage !
    Merci. Mais qu'en est-il de mes interrogations ci-dessus ?
    C'est une des ces prises de tête si vous saviez

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 76
    Par défaut
    Mon bric à brac vous inspire pas plus que ça on dirait

  7. #7
    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
    Si, ton "bric à brac" est intéressant mais on verra ça demain... parce que là
    Ne perds pas le moral.

    A+

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 76
    Par défaut
    Citation Envoyé par ouskel'n'or
    Si, ton "bric à brac" est intéressant mais on verra ça demain... parce que là
    Ne perds pas le moral.

    A+
    Moi, perdre le moral ? Jamaiiiiis.

    En plus, dans mon horoscope de ce matin dans "Métro", on me disait "Surtout ne vous découragez pas ! Persistez dans votre travail, ça va finir par payer !!"

    Moi qui crois jamais à ces conneries, je me suis dit : "Put... c'est dingue..."

    Bon par contre, autant je garde le moral, autant l'utilisation intensive et prolongée de mon modeste cerveau pour des résultats quasi-inexistants m'incite fortement à la glandouille (exemple : Je vais sur les forums de développez.com ). Et ça c'est pas pro...

    On est tous motivés par le résultat, c'est comme ça

  9. #9
    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
    C'est bien, je 'achement rassuré, je crains les dépressifs
    Ton pb :
    As-tu opté pour une solution ? VB + VBA
    As-tu la possibilité de placer des macros dans Excel qui fassent ce que tu veux ou bien VB doit-il passe des paramètres à Excel ?
    Si tu veux travailler sur Excel depuis VB, tu as un truc bien fait dans la FAQ
    De nombreux exemples ont été données sur le forum et une recherche avec VB & Excel te donnera une idée de tout ce qu'on peut faire.

    A + je reviens je w

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 76
    Par défaut
    Ben en fait, je me tâte encore entre une solution VB+VBA et une solution full VBA...
    Concernant ce que doit faire l'exécutable, c'est quand même très poussé puisqu'il doit pouvoir totalement créer le fichier Excel : dessiner l'interface, créer des macros, passer des paramètres (j'utilise un fichier INI pour plus de simplicité), déclarer des variables, rajouter des forms, etc...

  11. #11
    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 "tu
    Concernant ce que doit faire l'exécutable, c'est quand même très poussé puisqu'il doit pouvoir totalement créer le fichier Excel : dessiner l'interface, créer des macros, passer des paramètres (j'utilise un fichier INI pour plus de simplicité), déclarer des variables, rajouter des forms, etc...
    Alors là, je ne t'aiderai pas
    Par contre avec VBA-E je pourrai sans doute t'aider bien que je ne t'encourages pas, pas du tout, et même je te déconseigne, de modifier les macros par soft. Je crois que tu n'as pas idée. Pour savoir si tes macros sont correctes, tu n'as même pas le correcteur automatique. La moindre erreur d'écriture (ex : Worksheet au lieu de worksheets, cell au lieu de cells, ";" au lieu de ","... et c'est un nouveau test avec recherche du bug, effacement de la macro, relancement de la macro créant la macro...
    Ceci dit, je te sens courageux...

    Tu dis

    A+

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 76
    Par défaut
    Je sais que c'est dingue...

    Mais quels autres choix, pour offrir à un utilisateur de modeler totalement une application même en VBA-E ? Honnêtement, ça fait plus de deux mois que je suis sur la question, et en VB/VBA, je vois pas d'autres alternatives...

    Si on offre à l'utilisateur de grandes possibilités de configuration, forcément ses actions via des "interfaces d'administration", toucheront au macro/variables/interfaces "Client" que ça soit par du code saisi directement ou par du code généré par l'appli en fonction des actions/demandes de l'utilisateur...

    Je suis limite en train de développer la prochaine version de Visual Studio là ! Rigolez pas j'ai partiellement développé une RichTextBox avec des fonctionnalités VB (coloration syntaxique, affichage auto des variables/paramètres déjà existants...). Je frôle la syncope cérébrale...

    En réalité, c'est un massacre puisque j'arrive à rien...

    Je sais comment ça va finir tout ça... On va finir par dire que les stagiaires de P5 sont des incapables qui en branlent pas une...

  13. #13
    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
    Et si tu nous parlais de ce que tu veux réaliser, concrètement ? Quels libertés veux-tu offir aux utilisateurs qu'elles exigent de ré-écrire des macros ? Conditions, origine des paramètres, paramètres... ?

    A+

  14. #14
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 76
    Par défaut
    Pfiouuuuuuu... On va tenté le coup.

    Alors il s'agit d'une application de description de processus SI. Grosso modo, cette appli a pour but de fournir toutes les infos nécessaires à quiconque souhaite connaître le déroulement d'un processus de bout en bout au travers de diagrammes de séquence.

    Plus concrétement, admettons que tu commandes un abonnement ADSL. Et bien cette appli va demander à l'utilisateur de spécifier plusieurs paramétres te concernant : nature du client, canal de vente, opération commerciale, parc existant, offre désirée, mode de remise du matériel, etc ; et va générer un diagramme qui permettra de voir ce qui se trame au niveau SI.

    Telle qu'elle existait, cette appli était totalement fonctionnelle mais n'était limité qu'à un certain contexte : elle décrivait uniquement les processus de Commande-Livraison en fonction de TELS paramètres, au travers de TEL SI, constitué de TELLES applications.

    L'objet de mon stage est d'améliorer et d'adapter cet outil, l'idéal étant qu'il puisse s'adapter à n'importe quel contexte. L'idée c'est donc de rendre l'application moins rigide et de permettre à une personne compétente, qu'on appelle un coordinateur fonctionnel, (que j'ai appelé "administrateur" jusqu'ici) de configurer l'outil en fonction du SI qu'elle a en charge afin que "l'utilisateur lambda" puisse par la suite générer des diagrammes pertinents.

    Dans cette idée de configurabilité (ça se dit ? ), on peut donc dégager trois axes :

    - L'ajout/modif/suppression d'application : partie la moins difficile et actuellement fonctionnelle

    - L'ajout/modif/suppression de paramètres/attributs : ce sur quoi je me prends la tête depuis un bon moment. Concrétement, on aurait, par exemple, la possibilité d'ajouter un paramètre "sexe", prenant en valeur "homme" et "femme", intervenant après tel paramètre, et s'enchaînant avec tel autre paramètre, de sorte qu'à la saisie des paramètres on ait par la suite une nouvelle fenêtre "Sexe ?" s'affichant au moment opportun et influant sur les diagrammes générés.

    - L'ajout/modif/suppression de processus (appelés cas de gestion ou usecases) sur lequel je ne me suis pour l'instant que partiellement penché mais qui offre au moins autant de joie en perspective si ce n'est plus que l'administration des paramètres car un cas de gestion dépend : des applications et des paramètres valorisés...

    Il y a encore bien d'autres facteurs complexifiant l'application qui rentrent en jeu (valeurs de paramètres s'incluant ou s'excluant, ordre d'enchaînement des fenêtres variant selon la valeur des paramètres et bien d'autres...).

    J'espère que tu m'as compris. C'est vrai que ce n'est pas facile à expliquer et à faire comprendre comme ça.

    Tu comprends pourquoi je suis au bord du suicide ?

  15. #15
    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 ! Je connais quelqu'un qui adore se prendre le chou, s'il passe par là je suis bien certain qu'il aura son mot à dire
    Quant à moi, je me fais une croix dessus. As-tu tenté un algorithme ? C'est comme si tu voulais créer un grafcet opérationnel sans connaître les entrées régissant des transitions dont tu ne sais pas ce qu'elles provoquent...
    Tu n'as pas pensé à l'intelligence artificielle pour faire ça ?
    Bref, pas compter sur moi et attendre autre farfelu comme toi...
    Ceci dit, bon courage et bonne chance, tu en auras besoin

    Bien cordialement

    PS - Je suivrai volontiers tes progrès

  16. #16
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 76
    Par défaut
    Citation Envoyé par ouskel'n'or
    Quant à moi, je me fais une croix dessus.[...]
    Bref, pas compter sur moi et attendre autre farfelu comme toi...
    Mince, je comptais pas t'effrayer

  17. #17
    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
    Trop tard ! Mais maintenant que tu m'as donnée ta démarche, y'a plus qu'à...

  18. #18
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Par défaut
    Je me promène par là ... et n'ai qu'un mot à dire :
    Quand un but est très ambitieux (et surtout si l'utilité réelle de sa finalité reste à "peser"), il doit correspondre à ses moyens...
    Je me suis, comme beaucoup d'autres, lancé de tels défis...
    Je me suis donc également, comme beaucoup d'autres, "cassé la figure" ici et là... Réjoui ailleurs de tel ou tel autre succès dans MES aventures...
    Une chose reste certaine, il s'agissait de MES aventures et, tout à fait conscient de ce que ces aventures étaient mes propres défis à MOI-MEME, j'ai toujours fait celà dans le plus grand silence, en n'impliquant personne d'autre dans ces affaires-là ...

    J'apporterai donc, S'IL LE DEMANDE, mon aide ponctuelle dans cette affaire, mais il devra s'agir clairement d'une aide PONCTUELLE, sur un point précis, ponctuel également

  19. #19
    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
    J'ai dit quelque part :
    Je connais quelqu'un qui adore se prendre le chou, s'il passe par là je suis bien certain qu'il aura son mot à dire
    Tu vois, j'avais raison, il s'est montré !
    Bonne chance à tous les deux.

  20. #20
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 76
    Par défaut
    C'est évident que de toute façon ça ne sera qu'une aide sur tel ou tel point précis... Je comptais pas vous filer l'énoncé et vous donner mon programme à développer (à la fois hors de question et impossible)...

    Maintenant jmfmarques, tu n'as toujours pas répondu à mes premières questions (premier post de ce topic)

Discussions similaires

  1. [OL-2010] Interaction Outlook/Sharepoint VBA
    Par Antoine B dans le forum VBA Outlook
    Réponses: 3
    Dernier message: 31/03/2013, 20h13
  2. vb6 ou vba - lenteur execution macro sur excel 2007
    Par Enigme dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 26/03/2010, 13h50
  3. Comment différencier VB6 de VBA
    Par SfJ5Rpw8 dans le forum Vos contributions VB6
    Réponses: 1
    Dernier message: 29/11/2007, 20h43
  4. Convertir Du Vb6 En Vba
    Par thunderpat dans le forum Général VBA
    Réponses: 3
    Dernier message: 29/03/2007, 12h29
  5. Conversion Vb6 Vers Vba
    Par thunderpat dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 29/03/2007, 11h49

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