[VBA] Chargement UserForm, problème Form.Show

Résolu
Bonjour à tous,

J'ai développé une macro, qui ouvre un Form, qui fonctionne quand je la lance depuis mon post.

Dès que je veux faire migrer la macro sur un autre post, ça ne marche plus : il me débogue la ligne Decoupages.Show (erreur 91 : l'indice n'appartient pas à la sélection) ... Decoupages étant le nom de mon Form (que j'ai changé directement dans la propriété Name, sans passer par une ligne de code).

J'ai essayé de déclarer une dim Decoupages as UserForm, mais il m'affiche une autre erreur.

On dirait qu'il ne reconnait pas Decoupages comme un Form sur les autres postes ... pourtant j'ai vérifié et la proprio Name garde bien le nom de Decoupages quand je fais migrer la macro ('fin le fichier contenant la macro).

Dites si vous voulez mes lignes de codes.

Merci d'avance.

8 réponses

  1. Re up
    0
    1. Contributeur
      Bonsoir,

      Si tu pouvais mettre un bout de ton fichier avec la macro qui plante tu auras plus de réponses.
      Dépose-le sur cijoint.fr et colle ici le lien fourni.
      eric
      0
  2. Okay j'attendais quand même du mouvement avant de "cracher" mon fichier.

    La macro se trouve sur ExtractionTest, 1ère feuille, le gros bouton.

    Une fois dézipés, vaut mieux pas bouger les fichiers (disons qu'ya tout un ballet d'ouverture de fichiers) ... et encore pas sur que ça marche (vous aurez un débug avant mon débug xD ... vérifiez les chemins dans ces cas là).

    Si tout va bien le débug doit apparaître sur la ligne
    Decoupages.Show


    http://dl.free.fr/getfile.pl?file=/cRIsh3kX
    0
    1. Contributeur
      Pas trop le temps d'approfondir vu l'heure (et puis il faudrait tout suivre en pas à pas) mais j'ai l'impression que tu ouvres une nouvelle session d'excel avec Set xlApp = CreateObject("Excel.Application")
      et qu'ensuite cette session restant active (?) tu ne vois plus les classeurs de l'autre session.
      Enfin c'est juste une piste, parce que je ne vois pas pourquoi ça marcherait mieux sur ton poste...
      eric
      0
  3. Ya pas de problèmes pour l'heure tardive, c'est déjà bien sympa.

    Le truc c'est que si tu prends le déroulement des macros dans l'ordre où elles sont appelées(ExtractionGironde -> ExtrCUB -> ExtrMerignac -> Extr10CQ), j'utilise à chaque fois la même méthode pour créer un fichier (j'suis pas un crack, dès que j'ai une méthode qui tient la route, je m'y tiens), et tout ce déroule parfaitement.

    Tu as le débug avant la ligne Découpages.Show si tu me dis ça non?
    0
    1. Contributeur
      Non, ça bugue bien au même endroit, plus précisément à l'initialisation du userform.
      Il semble ne pas connaitre Workbooks("10CQ_MERIGNAC_INSEE_2006")
      (pourtant bien présent et ouvert)

      Si je remplace Workbooks("10CQ_MERIGNAC_INSEE_2006"). par xlbook. (puisque tu l'as redéfini à l'ouverture) ça passe...

      eric
      0
  4. Tout marche, le Userform est affiché et tu peux faire les sélections?
    0
    1. Contributeur
      Tout marche... je ne sais pas.... mais les listes déroulantes sont remplies
      0
  5. Vu que le problème se posait sur un autre poste et que je n'ai accès qu'à mon poste aujourd'hui, ça te dérangerait de tester jusqu'au bout?

    Ce serait de sélectionner 2 découpages (peu importe) par les listes, cliquer sur "Afficher les stats comparatives" et me dire si, sur le fichier "Modèle" qui devrait rester ouvert, sur la feuille Modèle, tu retrouves bien dans tableaux et graphiques les découpages que tu as sélectionné (et à part le premier tableau et qqs problèmes de taille sur les camemberts, tout doit être "nickel").

    Je suis en train de rédiger le rapport lié à cet outil et je veux (dois) envoyer l'outil avec ... s'il peut marcher tant qu'à faire (même s'il me restait ensuite 3 semaines pour résoudre ce petit problème).
    0
    1. Contributeur
      désolé mais au boulot, pas trop le temps...
      Ce soir si ça t'interesse toujours
      eric
      0
    2. Contributeur
      non, ça plante plus loin à chaque fois que tu fais appel à ce classeur en le nommant.
      Et puis il y a toujours cette fenetre de xlApp qui reste ouverte vide en avant plan...
      0
    3. Contributeur
      Si dans tout le module Decoupage tu remplaces Workbooks("10CQ_MERIGNAC_INSEE_2006") par xlbook ça parait correct (et la session vide se ferme).

      Résultat : http://www.cijoint.fr/cjlink.php?file=cj201006/cijZKeNsEi.xls

      eric
      0
  6. Contributeur
    Bonjour , bonjour Eric,
    Quand tu fais appel à un classeur il faut mettre sont extension.
    Workbooks("10CQ_MERIGNAC_INSEE_2006.XL??") 

    A+
    0
    1. Contributeur
      hé bé voilà le pourquoi.... :-)
      Merci
      0
  7. Okay merci les gars de votre aide!

    En effet j'avais pas mis l'extension du fichier dans les macros du Form ... d'ailleurs en remplaçant par xlBook du coup tu la mettais, voilà pourquoi ça roulait.

    Mercie encore eric et lermite :)
    0