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 :

Traduction Excel vers VBA tableau listobject


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 25
    Par défaut Traduction Excel vers VBA tableau listobject
    Bonjour à tous.

    Ma demande d'aide : dans quelle direction dois-je chercher pour trouver mon erreur ?

    J'ai une formule Excel qui fonctionne très bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(ESTNA(INDEX(A1 : D3;SOMMEPROD(EQUIV(G1 & H1 & I1 & J1;A1:A3 & B1:B3 & C1:C3 & D1 : D3;0) * 1);4));"Pas de résultat";"Résultat")
    Quand je l'enregistre via macro, elle devient :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "=IF(ISNA(INDEX(A1:D3,SUMPRODUCT(MATCH(G1 & H1 & I1 & J1,A1:A3 & B1:B3 & C1:C3 & D1:D3,0) * 1),4)),""Pas de résultat"",""Résultat"")"
    Or, je voudrais la faire fonctionner avec les tableaux listobject.
    J'ai donc adapté le code ci-dessus par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        Dim wsFullDatas As Worksheet
        Set wsFullDatas = ThisWorkbook.Worksheets("Full Datas")
        Dim varTableauFullDatas As ListObject
        Set varTableauFullDatas = wsFullDatas.ListObjects("TableauFullDatas")
        If IsNA(Index(varTableauFullDatas, SumProduct(Match((ComboBoxAddNewFlowCountryName & ComboBoxAddNewFlowRange & CDbl(TextBoxWaveNumber) & CDbl(TextBoxAddNewFlowNbCR)), (varTableauFullDatas([@COUNTRY]) & varTableauFullDatas([@RANGE]) & varTableauFullDatas([@WAVE]) & varTableauFullDatas([@NB CR])), 0) * 1), 4)) Then
    Mais quand je lance la macro, j'obtiens un message d'avertissement "Erreur de compilation : nombre d'arguments incorrect ou affectation de propriété incorrecte", en ciblant l'utilisation de "varTableauFullDatas([@COUNTRY])"

    Ma demande d'aide : dans quelle direction dois-je chercher pour trouver mon erreur ?

    Merci d'avance !!!

  2. #2
    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,
    Il faudrait que tu places le code que tu publies entre les balises prévues à cet effet dans l'éditeur des messages. C'est le bouton avec croisillon #
    J'ai des doutes quant au fait que la ligne de code ci-dessous fonctionne car tu mélanges une formule excel avec du code VBA. Soit tu passes par la fonction EVALUATE soit tu écris cette formule d'excel directement dans le classeur soit encore tu traduis cette ligne de code en instructions VBA
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If IsNA(Index(varTableauFullDatas, SumProduct(Match((ComboBoxAddNewFlowCountryName & ComboBoxAddNewFlowRange & CDbl(TextBoxWaveNumber) & CDbl(TextBoxAddNewFlowNbCR)), (varTableauFullDatas([@COUNTRY]) & varTableauFullDatas([@RANGE]) & varTableauFullDatas([@WAVE]) & varTableauFullDatas([@NB CR])), 0) * 1), 4))
    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

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 25
    Par défaut
    Citation Envoyé par Philippe Tulliez Voir le message
    Il faudrait que tu places le code que tu publies entre les balises prévues à cet effet dans l'éditeur des messages. C'est le bouton avec croisillon #
    Voilà c'est fait, sorry :p

    Je teste ce que tu me proposes, et je reviens vers toi.

    Merci pour ton aide

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 25
    Par défaut
    Peut-être que je m'y prend mal ...
    Je récupère 4 infos d'un Userform (2 combobox et 2 textbox) et je veux les ajouter sur la même ligne au tableau (TableauFullDatas) si ces 4 infos n'y sont pas déjà (une info par colonne de la même ligne).

  5. #5
    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,
    Peut-être que je m'y prend mal ...
    Je récupère 4 infos d'un Userform (2 combobox et 2 textbox) et je veux les ajouter sur la même ligne au tableau (TableauFullDatas) si ces 4 infos n'y sont pas déjà (une info par colonne de la même ligne).
    J'avoue ne pas comprendre le lien entre ta demande initiale où tu parles de modifier une formule d'excel pour l'intégrer en VBA et ton dernier post.
    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

  6. #6
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 25
    Par défaut
    Citation Envoyé par Philippe Tulliez Voir le message
    Bonjour,

    J'avoue ne pas comprendre le lien entre ta demande initiale où tu parles de modifier une formule d'excel pour l'intégrer en VBA et ton dernier post.
    Je rebondissais sur ta phrase " tu mélanges une formule excel avec du code VBA". Donc je remettais en question ma demande initiale.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 09/08/2016, 14h16
  2. [XL-2003] Export données Excel vers un tableau Word
    Par Marc31 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 25/06/2012, 09h12
  3. Traduction de formule d'Excel vers VBA
    Par emi3113 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 29/05/2008, 20h15
  4. Copier des données d'un fichier Excel vers des tableau Word
    Par drthodt dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 23/05/2008, 14h57
  5. formule excel vers VBA
    Par kedas dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/10/2007, 18h18

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