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] transfert de valeur de variable en VBA


Sujet :

Macros et VBA Excel

  1. #1
    Membre Expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 871
    Billets dans le blog
    1
    Par défaut [VBA_E] transfert de valeur de variable en VBA
    Bonjour à tous,

    Voilà mon petit problème : J'ai deux classeurs distincts
    sur mon classeur A j'ai une macro : "Private Sub worksheet_change(ByVal Target As Range)" dans laquelle j'interdit des MAJ de certaines cellules

    sur mon classeur B j'ai des macros qui doivent faire des mises à jour sur justement ces fameuse cellules

    j'ai penser mettre un variable booléenne à vrai si MAJ par ce classeur et de tester dès le départ sa valeur. J'ai déclarer cette variable en public.

    Mais quand j'execute ma macro de mon classeur B j'ai sur le classeur B
    MAJ_exploit = vrai
    et sur le classeur A
    MAJ_exploit = vide

    Comment puis-je transferer la valeur de ma variable par macro de façon que ce soit aussi = vrai ?

    NB : J'ai déclarer ma variable que sur B dois-je le faire sur A aussi?

    merci pour vos réponse éclairées

    Igloobel

  2. #2
    Membre habitué
    Inscrit en
    Janvier 2006
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 9
    Par défaut
    Bonjour,

    je pense à une autre solution...

    Si tu ne veux pas faire de contrôle à la suite d'un évenement pendant un moment, tu peux utiliser la propriétés "enableEvents" de l'objet "application".
    Si tu écris :
    "application.enabledEvents = false" -> aucun evenement ne se déclanchera, et donc tu n'entrera pas dans ta fonction de vérification.
    "application.enabledEvents = true" -> tu remet en place la gestion des évenements et tes tests se feront à nouveau.

    Je suis qd même une débutante en VB-Excel, donc j'espère que quelqu'un te confirmera ce que je dis...

    Bonne chance!

  3. #3
    Membre expérimenté
    Inscrit en
    Novembre 2005
    Messages
    130
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 130
    Par défaut
    Salut Igloobel,
    Je ne pense pas que tu puisses "transporter" ta variable d'un classeur à l'autre

    Par contre tu peux du classeur B mettre MAJ, si c'est le cas, dans une certaine cellule du classeur A et tester le contenu de cette cellue dans
    Private Sub worksheet_change(ByVal Target As Range)
    et ensuite effacer le MAJ

    @+

  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
    ou encore (mais c'est lourdaud) utiliser un fichier.txt "tremplin"

  5. #5
    Membre Expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 871
    Billets dans le blog
    1
    Par défaut
    Merci à tous

    yridwenn : ta solution est géniale je ne connaissait pas : "application.enableEvents = false" (sans le "d")

    Citation Envoyé par Tu
    Si tu écris :
    "application.enabledEvents = false" -> aucun evenement ne se déclanchera, et donc tu n'entrera pas dans ta fonction de vérification.
    "application.enabledEvents = true" -> tu remet en place la gestion des évenements et tes tests se feront à nouveau.
    Donc je te confirme que cela marche nickel
    je l'ai mis en place dans les 2 classeurs et bien même si j'appelle par un autre classeur mes mis a jour se font c'est impec !
    Citation Envoyé par Tu
    Je suis qd même une débutante en VB-Excel, donc j'espère que quelqu'un te confirmera ce que je dis...
    Et bien une pour une débutante tu es plutôt callé ! et je viens de tester je te confirme que tu n'as pas dis de bétise

    Citation Envoyé par bouley
    Je ne pense pas que tu puisses "transporter" ta variable d'un classeur à l'autre
    Et bien c'est bien domage qu'on ne puisse pas le faire parce que c'est exactement ce que je voulais faire !

    Citation Envoyé par jmfmarques
    ou encore (mais c'est lourdaud) utiliser un fichier.txt "tremplin
    Oui c'est une solution qui m'interesse même si je l'adopte pas comme solution pour ce problème précis.

    En fait je ne sais pas faire un fichier .txt ou .ini qui contiendrais des données temporaire et le gérer . (quand je dis "sais pas faire" c'est par macro bien sur)

    c'est peut-être très simple mais bon, sais pas

    merci encore

    Igloobel

  6. #6
    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 peut-être très simple mais bon, sais pas
    Donc, tu n'a pas essayé ! Juste pour dire...

    A+

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

Discussions similaires

  1. [XL-2003] comparer valeur d'une variable tableau vba
    Par redstoff dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 14/09/2011, 14h00
  2. [FAQ][VBA-W] Mémoriser la valeur de variables word
    Par SfJ5Rpw8 dans le forum Contribuez
    Réponses: 1
    Dernier message: 24/05/2007, 18h13
  3. [Debutant][Système]Récupérer la valeur des variables systeme
    Par cameleon2002 dans le forum API standards et tierces
    Réponses: 5
    Dernier message: 16/02/2007, 09h57
  4. [VBA-O] Stocker des valeurs de variables
    Par Elstak dans le forum VBA Outlook
    Réponses: 7
    Dernier message: 16/08/2006, 08h38
  5. transfert de valeurs entre fonctions js et asp
    Par ericmart dans le forum ASP
    Réponses: 5
    Dernier message: 10/03/2005, 16h18

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