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 :

Variables différentes dans plusieurs modules VBA


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    453
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 453
    Points : 74
    Points
    74
    Par défaut Variables différentes dans plusieurs modules VBA
    Bonjour,

    Je suis en train d'essayer de faire un code VBA pour pouvoir:
    -1. initialiser une camera (connection)
    -2. regler le flou de cette meme camera
    -3. lancer l'enregistrement

    Du coup j'ai fait 3 modules init, focus, et record. Mais ces 3modules font appel aux memes variables:

    Dim cam As OLEObject
    Dim sess As Object
    Dim path As String

    par exemple.. Dans ce cas si je connecte la camera ds init() j'utilise cam et que je veux lancer l'enregistrement avec record() est-ce que je dois remettre la déclaration de ces variables de la meme manière Dim cam As OLEObjects ou ne surtout pas faire ca pour que les variables de depart ne soient pas ecrasées? Si je les declare pas ds record() mais qu'elles ont ete initialisées dans init() avant record va les reconnaitre??

    Merci pour votre aide

  2. #2
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Bonjour.

    Il y a, à mon avis, 2 solutions :
    1. Déclarer ces variables publiques
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Public maVariable as ...
    en tête d'un module standard, en dehors de toute procédure.
    2. S'il y a n procédures, et qu'une appelle les autres, déclarer les variables dans cette première procédure puis les passer en paramètres lors des appels des autres.

    Cordialement,

    PGZ
    pluritas non est ponenda sine necessitate - Le rasoir d'Okham
    Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    752
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 752
    Points : 832
    Points
    832
    Par défaut
    Perso, j'opterais bien pour un modèle objet: c'est le cas rêvé.

    Je serais toi je créerais une classe de type Camera, avec dedans "Class_Initialise", une propriété pour le flou et une méthode pour lancer l'enregistrement, et bien sûr ton OLEObject, ton Object et ta variable String. Ainsi, tout ce que tu auras à faire dans ton code sera de créer une nouvelle caméra:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim ma_camera As Camera
    Et tu l'utiliseras comme ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ' Réglage du flou
    ma_camera.Flou = 10
    ' Lancement de l'enregistrement
    ma_camera.LancerEnregistrement

Discussions similaires

  1. une variable utilisée dans plusieurs modules
    Par kekule10 dans le forum Général Python
    Réponses: 0
    Dernier message: 22/07/2014, 01h01
  2. variable a utiliser dans plusieurs modules
    Par davenne.benoit dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/05/2010, 10h23
  3. [VB.NET] Variable visible dans plusieurs fonctions ?
    Par Webman dans le forum ASP.NET
    Réponses: 2
    Dernier message: 19/05/2004, 17h36
  4. enregistrer deux variable différente dans un seul champs
    Par developpeur_mehdi dans le forum Bases de données
    Réponses: 7
    Dernier message: 07/03/2004, 23h18
  5. Variable "globale" (dans plusieurs templa
    Par mattmat dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 17/06/2003, 19h22

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