Message "erreur d'exécution 9"

Résolu
Bonjour Chers tous,

j'essaie d'exécuter le code du fichier ci-desssous

https://cjoint.com/c/KLEod0yDPaZ (est un fichier .frm)

à partir du classeur dont le lien est le suivant

https://cjoint.com/c/KLEn1qtQQLZ

Malheureusement j'ai le message d'erreur

"erreur d'exécution '9', l'indice n'appartient à la sélection"

Pouvez vous m'aider à résoudre ce problème svp ?

Merci de votre aide

9 réponses

  1. Bah, moi j'ai enregistré le formulaire VBA avec une extension .frm.

    En revanche, j'ai du mal à comprendre " il n'y a aucun object tableau ou autre sur votre feuil2". Pourriez-vous donner plus de détails f894009 ?
    1. Re,

      Sheets(2).ListObjects(1).ListRows.Add

      Dans votre code, cette ligne permettrait d'ajouter une ligne a un tableau s'il y a en avait un et un seul. Autrement il faudrait mettre le nom du tableau
      exemple:
      Sheets(2).ListObjects("nom du tableau").ListRows.Add


      Dans la feuille Order vous avez le tableau Tableau2 et dans la feuille Supplier vous avez Tableau1
    2. @f894009Mais pourquoi tu ne l'as pas dit plutôt !

      Merci beaucoup!!! C'était ça le problème !
  2. Bonjour a vous deux et meilleur voeux

    C'est votre histoire de .frm qui m'a intrigue.
    En principe ces fichiers sont pour du VB5.0 ou VB6.0 qui n'a rien a voir avec du VBA

    Pour votre erreur 9, normal, il n'y a aucun object tableau ou autre sur votre feuil2
    1. - Démarrer l'application VBA d'Excel,
      - Exécuter la fenêtre
      - Faites un enregistrement
      - Cliquer sur "AJOUTER"

      Si tout se passe bien, il y aura un message d'erreur
      1. Contributeur
        Le message d'erreur se produit sur la ligne:
        Sheets(2).ListObjects(1).ListRows.Add

        Je pense que cette ligne se sert à rien, et je suggère de la supprimer.
        Je suggère aussi de modifier la ligne suivante, et d'y ajouter "+1", ainsi:
        DL = Sheets(2).Range("b9999").End(xlUp).Row+1
      2. @yg_beMerci ,
        ça a marché :)

        Bizarre, d'habitude cette ligne ne pose aucun problème et pourtant ? :(
      3. @yg_bele code marche mais après la colonne "Statut" rien ne se passe :(
      4. Contributeur
        @jus2mandarineQuelle partie du code devrait faire quoi après la colonne "Status"?
    2. Désolé ! le lien précédent n'est pas le bon :(

      Ci-dessous le lien correct du fichier xlsm complet avec le tout le code vba du formulaire:

      https://cjoint.com/c/KLFnuGSNnLT

      Cordialement /-
      1. Contributeur
        Et comment provoquer le message d'erreur?
    3. L'importation onctionne bien
      je n'arrive à relier ce fichier .frm au classeur Excel.
      Le code comporte du fichier .frm comporte une erreur que je n'arrive pas à résoudre (voir mon premier message).
      1. Contributeur
        Ne peux-tu pas sauver le fichier xlsm après l'importation?

        Un fichier Formulaire.frx est-il présent dans le même dossier?
    4. J'ouvre ce fichier à partir de visual basic d'Excel. J'utilise la commande "importer un fichier" à partir du volet gauche qui affiche le projet VBA ainsi que les fenêtres ayant l'extension .frm
      1. Contributeur
        Et cette importation fonctionne bien?
        Pourquoi ne partages-tu pas le fichier Excel après avoir importé?
        Est-il possible qu'un fichier Formulaire.frx soit présent dans le même dossier?
    5. Bonjour yg_be,

      le premier lien est un formulaire d'enregistrement en VBA.
      Le deuxième lien est le fichier Excel dans lequel les enregistrements doivent se faire.
      1. Contributeur
        Quel logiciel utilises-tu pour ouvrir le premier fichier?
    6. Contributeur
      bonjour,
      que fais-tu, à partir de ces deux fichiers, pour obtenir cette erreur?