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 :

erreur en Code VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    soudeur
    Inscrit en
    Décembre 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : soudeur
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2019
    Messages : 1
    Par défaut erreur en Code VBA
    Bonjour à tous et j’espère que vous avez passez de bonne fêtes.
    Voila j'ai un problème dans l'onglet article j’ajoute via un userform des articles et a partir du 3eme 4eme ou 5 eme article j'ai ce message d'erreur : erreur d'exécution '-2147417848(80010108) la méthode 'add' de l'objet 'list rows' a echoué
    Si quelqu'un peut m'aider je trouve pas le pourquoi.
    Merci.
    vap2.0 test.xlsm

  2. #2
    Membre Expert Avatar de Thautheme
    Homme Profil pro
    salarié
    Inscrit en
    Août 2014
    Messages
    1 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2014
    Messages : 1 373
    Par défaut
    Bonsoir Eddifalco, bonsoir le forum,

    J'ai rajouté jusqu'à 10 articles sans rencontrer ce problème chez moi...

  3. #3
    Membre Expert Avatar de jerome.vaussenat
    Homme Profil pro
    Formateur Bureautique
    Inscrit en
    Janvier 2011
    Messages
    1 629
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Formateur Bureautique
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 629
    Par défaut
    Salut,


    effectivement l'erreur est très aléatoire.

    Je te propose de modifier cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Sheets(2).ListObjects(1).ListRows.Add
    en
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Sheets(2).ListObjects("Tableau3").ListRows.Add

    C'est la ligne qui ajoute la ligne à la fin du tableau qui plante.
    On fait directement appel au tableau par son nom.
    Il semble que ça aille mieux.

    Tiens nous au courant.

    GG

  4. #4
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour Jérôme,
    C'est la ligne qui ajoute la ligne à la fin du tableau qui plante.
    On fait directement appel au tableau par son nom.
    Il semble que ça aille mieux.
    J'ai des doutes quant au fait que l'erreur proviendrait de là. En effet le membre d'une collection peut-être nommé soit par son nom, soit par son numéro.

    Par contre utiliser Sheets(2) n'est pas le meilleur choix puisque les numéros de la collection Sheets et Worksheets dépendent de l'ordre d'affichage dans le classeur. On n'est jamais à l'abri du changement de cet ordre
    De plus, il est important de préciser le classeur (parent du Sheet) et je choisirais l'usage d'un objet WorkSheet seul objet contenant des cellules (Les feuilles macros contiennent également des cellules mais pas pour le même usage).

    Personnellement j'utilise toujours la propriété CodeName des feuilles dans mes programmes

    [EDIT]
    Je voudrais nuancer cette réponse "J'ai des doutes quant au fait que l'erreur proviendrait de là. En effet le membre d'une collection peut-être nommé soit par son nom, soit par son numéro."
    J'utilise toujours ListObjects(1) pour tout tableau structuré (ListObject) présent dans une feuille de données car dans toutes mes applications il n'y a qu'une seule table par feuille.
    Toutefois s'il sagit de tableau de bord, de table dans mes paramètres, telle que liste, table de mapping, etc. il est évident que là je nomme spécifiquement les tableaux par leur nom.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

Discussions similaires

  1. Erreur dans Code vba
    Par marg0t dans le forum Access
    Réponses: 5
    Dernier message: 28/06/2013, 14h10
  2. erreur de code VBA & je ne comprend pas
    Par pascalito dans le forum IHM
    Réponses: 12
    Dernier message: 31/10/2010, 21h56
  3. [WD-2007] Erreur dans code VBA
    Par Elsa742 dans le forum VBA Word
    Réponses: 6
    Dernier message: 21/06/2010, 00h39
  4. Erreur dans code VBA
    Par symphyle dans le forum VBA Access
    Réponses: 7
    Dernier message: 23/12/2008, 14h28
  5. erreur dans code vba
    Par Renardo dans le forum IHM
    Réponses: 2
    Dernier message: 15/12/2008, 15h35

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