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 :

ou [XL-2007] - Execution de procedure de changement de valeur de cellule, introuvable [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2015
    Messages : 29
    Points : 18
    Points
    18
    Par défaut ou [XL-2007] - Execution de procedure de changement de valeur de cellule, introuvable
    Bonjour à tous,

    Merci à tous ceux qui sont venus lire mon problème pour tanter de m'aider.

    Alors excusez moi de ce titre confus mais difficile dans trouver un meilleur mais je tanter d'expliquer mon problème au mieux que je peux !!

    Contexte:
    L'entreprise viens de passer de Excel 2003 à Excel 2007 et comme ce n'est pas étonnant, des macros ne fonctionne plus ... Donc on ma demandé de tanter d'arranger ça.
    J'ai pu utiliser le fichiers sous excel 2003 pour voir comment il fonctionne. On commence par changer la valeur d'une cellule "Code" et lorsque l'on change la valeur de cette
    cellule il y a un quelque chose qui s'execute pour initialiser des ListBox dans les cellules à côté en fonction de la nouvelle valeur entrée. (Il me semble que cette procédure
    interroge une base de données pour initialiser les valeurs de la listBox des autres cellules)


    Problème:
    Lorsque je souhaite allé voir le code exécuté dans "Microsoft Visual Basic" et bien il n'y a rien !! Il n'y pas de procédure lié à cette cellule ou une procédure qui gère les
    changements de n'importe quelles cellules et où il y aurai une condition pour savoir si c'est telle ou telle cellule.


    Question:
    Est-ce que vous saurrez où se trouve le code qui est exécuté lorsque l'on change la valeur de cette cellule ? Comment y acceder ? Et comment on a pu créer une procédure comme ça ?


    Merci de votre

    Et si je n'ai pas été claire merci de me poser des questions.


    Cordialement, TaWoT

  2. #2
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut




    Bonjour,

    il y a forcément une procédure évènementielle dans un module d'une feuille de calculs ou du classeur (ThisWorkbook) …



    _____________________________________________________________________________________________________
    Je suis Charlie - Je suis Bardo
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  3. #3
    Membre émérite
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Points : 2 657
    Points
    2 657
    Par défaut
    Bonjour tawot,

    Alors, ALT + F11, comme tu as déjà fait.
    Ensuite, pas de module. C'est ce que je comprends de ton post.

    Alors :
    • Soit tu cliques sur la feuille où tu insères le fameux "code". Tu cliques sur le menu déroulant, à gauche, en haut, et tu sélectionnes "Wooksheet".
    • Soit tu cliques sur le classeur ("ThisWorkbook"). Tu effectues la même action et tu sélectionnes "Workbook".

    Ces procédures s'appellent des procédures événementielles qui permettent de "catcher" des actions lors d'actions particulières.

    Exemple :
    Private Sub Worksheet_Change(ByVal Target As Range)
    avec une condition sur la Range dans laquelle tu insères ce "Code".

    Au passage, on "tente d'installer une tente avec sa tante".

    N'hésite pas à revenir vers moi !

    Cordialement,
    Kimy

    [EDIT] Bonjour Marc. Tu as été plus rapide.
    La logique :
    • Plus ya de gruyère, moins ya de gruyère.
    • Plus tu pédales moins vite, moins tu avances plus vite.
    Plusoyer les réponses pertinentes et n'oublier pas de résolver en fin de post !

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2015
    Messages : 29
    Points : 18
    Points
    18
    Par défaut
    Citation Envoyé par Marc-L Voir le message


    Bonjour,

    il y a forcément une procédure évènementielle dans un module d'une feuille de calculs ou du classeur (ThisWorkbook) …


    Et bien non justement !!!! J'ai regardé partout !!! (Enfin partout, juste les module, les feuilles et ThisWorkbook, je sais pas s'il y a d'autres endroits ... mais je crois pas)
    Il n'y a absolument rien qui fait référence à une exécution automatique après le changement de valeur de cette cellule !!!

    Je suis juste perdu dans ça !!! Et il y a vraiment quelque chose qui s'exécute ... !!!


    Malheureusement je peux pas vous montrer le fichier car il fonctionne avec une base de données et pis il y a des données sensibles.
    Mais il y a quelque chose qui s'exécute et je trouve rien ... Je sais pas qu'est-ce que sait --"

    Citation Envoyé par Kimy_Ire Voir le message
    Bonjour tawot,

    Alors, ALT + F11, comme tu as déjà fait.
    Ensuite, pas de module. C'est ce que je comprends de ton post.

    Alors :
    • Soit tu cliques sur la feuille où tu insères le fameux "code". Tu cliques sur le menu déroulant, à gauche, en haut, et tu sélectionnes "Wooksheet".
    • Soit tu cliques sur le classeur ("ThisWorkbook"). Tu effectues la même action et tu sélectionnes "Workbook".

    Ces procédures s'appellent des procédures événementielles qui permettent de "catcher" des actions lors d'actions particulières.

    Exemple :
    Private Sub Worksheet_Change(ByVal Target As Range)
    avec une condition sur la Range dans laquelle tu insères ce "Code".
    Merci mais justement le problème est là !!! Il n'y a pas de procédures événementielles ... :/
    J'ai rien de tout ça dans le code ...

    Et si, il y a des modules mais j'ai déjà regardé en mettant des points d'arrêt et quand je change la valeur de la cellule "Code" sur ma feuille il n'y aucun point d'arrêt qui se déclenche ...


    Citation Envoyé par Kimy_Ire Voir le message
    Bonjour tawot,

    Au passage, on "tente d'installer une tente avec sa tante".
    Merci beaucoup ^^" Je me disais aussi qu'il y avait quelque chose qui n'allais pas !!

  5. #5
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut




    A tenter sous 2007 : enregistrer le classeur en .xlsx (sans code) et,
    si à la modification de la cellule il y a un message d'erreur, ce serait une piste …

    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  6. #6
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2015
    Messages : 29
    Points : 18
    Points
    18
    Par défaut
    Intéressant Je vais tester ça après manger Merci

  7. #7
    Membre émérite
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Points : 2 657
    Points
    2 657
    Par défaut
    Citation Envoyé par tawot Voir le message
    Et si, il y a des modules mais j'ai déjà regardé en mettant des points d'arrêt et quand je change la valeur de la cellule "Code" sur ma feuille il n'y aucun point d'arrêt qui se déclenche ...
    Ca doit venir de là quand même. Tu as peut-être mal placé tes points d'arrêt.
    Tu peux nous montrer les procédures ?

    Cordialement,
    Kimy
    La logique :
    • Plus ya de gruyère, moins ya de gruyère.
    • Plus tu pédales moins vite, moins tu avances plus vite.
    Plusoyer les réponses pertinentes et n'oublier pas de résolver en fin de post !

  8. #8
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2015
    Messages : 29
    Points : 18
    Points
    18
    Par défaut
    Non je pense pas que ce soit la peine car je pense avoir trouvé le soucis !!

    Après avoir ouvert/fermé plusieurs fois le fichier j'ai remarqué ce message d'info:

    Nom : msg requete.PNG
Affichages : 182
Taille : 13,5 Ko


    Et je pense que le soucis est qu'une requête qui s'exécutait sous 2003 ne s'exécute plus sous 2007 !!

    En faite j'en suis sûr car quand je change la valeur il n'y pas de sablié indiquant que quelque chose s'exécute !!


    Donc maintenant, le truc c'est de trouver quelle requête s'exécute, de quoi elle est composée et comment la relancer sous 2007 !!
    Après je sais pas si la requête est encore sous 2007 et qu'il suffit juste de l'activer ou non ... Je n'en sais rien du tout. Je ne connais
    absolument pas ce domaine sous excel/vba et encore moins comment ça marche :/

    Donc pour l'instant je vais essayer de chercher quelque chose et si vous avez idée merci à vous de la partager !

    Citation Envoyé par Kimy_Ire Voir le message
    Tu as peut-être mal placé tes points d'arrêt.
    Et pour info, la première fois j'en avais mis dans toutes les procédure et apprès ton message j'ai retesté en mettant sur toutes les lignes !!!
    Et aucun ne c'est déclenché ^^ lol

  9. #9
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2015
    Messages : 29
    Points : 18
    Points
    18
    Par défaut Résolu !!!!
    Bon et bien j'ai résolu le soucis !!!

    Il fallait juste réactiver les connexions externes !! xD

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

Discussions similaires

  1. [XL-2007] Lancer une macro suite à un changement de valeur de cellule
    Par jnauche dans le forum Excel
    Réponses: 1
    Dernier message: 21/03/2014, 17h38
  2. Réponses: 6
    Dernier message: 18/05/2013, 19h10
  3. [XL-2007] Macro événementielle sur changement de valeur dans cellule
    Par lagratteCchouette dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 12/06/2009, 15h53
  4. Changement de valeur de cellule automatique
    Par b.bilel dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 29/05/2008, 23h12
  5. [Debutant][SQL] Execution de procedures stockées
    Par Yannos94 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 02/06/2004, 18h09

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