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 :

Ok VBA n'est pas fait pour ça mais..


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de anarchiste-mouton
    Homme Profil pro
    ceci
    Inscrit en
    Décembre 2017
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : ceci
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2017
    Messages : 69
    Par défaut Ok VBA n'est pas fait pour ça mais..
    Bonjour,

    je sais que VBA n'est pas fait pour créer des logiciels et qu'il serait plus judicieux d'apprendre un nouveau langage type C# pour faire cela. Mais étant têtu, pas dev de formation et n'ayant même pas d'ordinateur à moi, je me suis quand même lancé dans le projet de créer un petit logiciel pour un projet scolaire. Donc je trimbale un fichier .XLSM sur une clé USB et je bosse sur mon projet quand je trouve un PC à disposition. (C'est au moins un avantage de VBA qu'Excel soit installé quasi partout).

    Mon projet consiste à presque dématérialiser un livret de correspondance entre mon école, les élèves apprentis et les entreprises. Je dis presque parce que le classeur papier deviendra clé USB.
    Le projet est bien avancé, et fait assez sérieux. On ne soupçonne pas d'être sur Excel, sauf au lancement et lorsqu'il faut accepter les macros.

    Mon problème concerne les références du projet

    J'ai remarqué qu'une référence était souvent manquante sur les PC, la "MSCOMCT2.OCX". Elle sera donc sur la clé et je ferais un petit "lisez-moi" pour que les utilisateurs l'ajoutent par eux-mêmes.


    Ma question : Comment connaitre toutes les références indispensables au bon fonctionnement de l'application ? Y'a-t-il d'autres risques auxquels je pourrais être confronté ? Je suis preneur de toutes remarques et ou conseils.

  2. #2
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Bonjour
    Personnellement en phase d'exploitation, je transforme le maximum en Late Binding et en décochant le maximum des références (Qui peuvent l'être) pour des soucis de compatibilité.

    Pour l'existence ou non d'une librairie sur le poste de destination, là c'est autre chose.

  3. #3
    Membre confirmé Avatar de anarchiste-mouton
    Homme Profil pro
    ceci
    Inscrit en
    Décembre 2017
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : ceci
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2017
    Messages : 69
    Par défaut
    Merci mercatog pour cette réponse. Je viens donc d'essayer d'apprendre ces 2 notions que sont le late et le early binding (ici). Si je comprends bien, l'avantage concerne la gestion des erreurs? Elle se déclareront au plus tard et donc l'application sera un peu plus utilisable bien que la référence soit manquante?

    J'ai remarqué que lorsque la ddl "MSCOMCT2.OCX" est manquante, l'application plante à l'ouverture et le debbogeur pointe sur des objets comme les progressbar par exemple.

  4. #4
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par anarchiste-mouton Voir le message
    je sais que VBA n'est pas fait pour créer des logiciels et qu'il serait plus judicieux d'apprendre un nouveau langage type C# pour faire cela.
    Sans aller si loin, tu pourrais envisager Visual Basic (sans "A") avec Visual Studio Express ou Visual Studio Community (gratuits).

    Comment connaitre toutes les références indispensables au bon fonctionnement de l'application ?
    Un bon début est d'aller voir ce qui est coché dans Outils > Références.

  5. #5
    Membre confirmé Avatar de anarchiste-mouton
    Homme Profil pro
    ceci
    Inscrit en
    Décembre 2017
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : ceci
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2017
    Messages : 69
    Par défaut
    Bonjour Menhir,

    Quel serait l'avantage de passer à VB ? (on parle bien de VB.NET?) J'aime bien VBA par Excel car mes feuilles font office de table pour ma base de données, j'imagine que par VB il faut apprendre à utiliser SQL ?

  6. #6
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par anarchiste-mouton Voir le message
    Quel serait l'avantage de passer à VB ?
    Proposer une application autonome.

    on parle bien de VB.NET?
    Si je ne me trompe pas, Visual Studio intègre à la fois VB.Net et VB (sans A).

    mes feuilles font office de table pour ma base de données, j'imagine que par VB il faut apprendre à utiliser SQL ?
    VB peut utiliser Excel (tout comme VBA Excel peut utiliser Word ou Open Base, entre autres).
    Tant qu'un langage peut manipuler des objets (au sens informatique du terme) et qu'il peut "voir" les autres bibliothèques installées, il peut y accéder. Peu importe que le langage en question soit du VB, du C* ou autre.

    Cela dit, ça perd un peu de son intérêt puisque, du coup, il faut quand même Excel sur le poste de l'utilisateur.

  7. #7
    Membre Expert Avatar de Thumb down
    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2019
    Messages
    1 574
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juin 2019
    Messages : 1 574
    Par défaut
    Bonsoir,
    n'ayant même pas d'ordinateur à moi
    Le premier avantage que je vois est dans ta recherche, chez tes amis, d'un ordinateur procédant visual studio en plus d'office !

  8. #8
    Membre Expert Avatar de Thumb down
    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2019
    Messages
    1 574
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juin 2019
    Messages : 1 574
    Par défaut
    Bonjour,
    A l'époque d'xp et de win7 j'utilisais un logiciel qui faisait un snapchot de la base de registre pour faire des installations de logiciels fonctionnant sur clé USB.

    J'avais converti en USB Office et Vb6.

    Je n'est jamais testé ce lien et même si ça fonctionne sur win10!

    https://www.pcastuces.com/pratique/w..._usb/page2.htm

    Si je ne me trompe pas, Visual Studio intègre à la fois VB.Net et VB (sans A).
    En fait c'est une libraire Visual Basic.

    On affect un objet avec égale il n'y a pas de set!

    Pour avoir une certaine compatibilitée avec vb6 il y a la méthode creatobject qui n'existe pas en VB.net

    Trim existe pour vb6 mais alors qu'en VB.net c'est une méthode de l'objet string.Trim().
    Et oui string est un classe pas un variable!

    Personnellement je désactivé la librairie visual basic pour ne faire que du VB.net.

Discussions similaires

  1. Réponses: 3
    Dernier message: 31/05/2012, 15h09
  2. [Fait][VBA][Général]L'aide VBA n'est pas complète
    Par Miss Ti dans le forum Access
    Réponses: 11
    Dernier message: 03/04/2007, 21h51
  3. Réponses: 5
    Dernier message: 23/11/2006, 14h13
  4. Réponses: 4
    Dernier message: 18/05/2006, 18h50
  5. Réponses: 4
    Dernier message: 05/09/2005, 22h58

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