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 :

Comparaison tableaux suivis de comptes [XL-365]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France, Oise (Picardie)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 146
    Par défaut Comparaison tableaux suivis de comptes
    Bonjour,

    Dans mon fichier joint "SuivisFactures-3", je cherche à repérer les modifications éventuelles existantes entre la feuille de suivis ('Global') et la feuille 'A_comparer', récupérant des MAJ importées.

    Je me suis inspiré des travaux de 'AlgoPlus' (forum.excel-pratique) et ne parviens pas à bien 'régler' le dimensionnement des tableaux des 2 feuilles concernées.

    La problématique est que sur la feuille 'Global' le tableau est bien plus grand que sur la feuille 'A_comparer', et que seules les intitulés des 5 premières colonnes sont à prendre en compte pour le traitement.

    Récap:
    Feuille 'Global' = 1 tableau de 27 colonnes - 5 premières colonnes à comparer
    Feuille 'A_comparer' = 1 tableau de 5 colonnes - 5 colonnes à comparer

    Le Nb de lignes de chaque tableau est évolutif.
    Il est possible qu'une ou plusieurs colonnes soient rajoutées uniquement dans le tableau de la feuille 'Global', seulement dans la partie non testée.

    Le message d'erreur "l'indice n'appartient pas à la sélection" montre bien mon incapacité à améliorer la rigueur des déclarations de tableaux..
    Je voulais 'déclarer' avec des termes clairs la config de mes tableaux (pour éviter que plus tard aussi je me repose la même question...) mais je 'patauge'..

    Comment pourrais-je m'y prendre ..

    Merci.
    Max60
    Fichiers attachés Fichiers attachés

  2. #2
    Membre Expert
    Inscrit en
    Décembre 2002
    Messages
    993
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 993
    Par défaut
    Bonjour, tu dis que Feuille 'Global' = 1 tableau de 27 colonnes - 5 premières colonnes à comparer, alors qu'en fait tes 5 premières colonnes composent un tableau structuré nommé "Tableau2". Pourquoi ne pas transformer ta plage de cellules de la feuille "A_comparer" aussi en tableau structuré ? Inutile alors d'utiliser .Currentregion, calculer le nombre de colonnes à utiliser,etc... Comme je n'ai aucune idée de ce que tu veux comme résultat, je ne peux pas aider plus.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France, Oise (Picardie)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 146
    Par défaut
    Bonjour,

    Effectivement dans "A_comparer" les données placées sont nommées "Tableau2".
    C'est une erreur de ma part au moment ou j'ai préparé le fichier pour vous l'envoyer..

    J'avais bien sur effectué mes # essais sans tableau nommé, et surtout pas le même nom que dans 'Global'..

    Compléments d'infos :
    Je reçois un fichier .csv tous les deux jours comportant 5 colonnes indispensables.
    Je transforme ce .csv en .xlsx, et transfert les données (en mode tableau, ou pas) dans l'onglet "A_comparer".

    Ce que je souhaite, c'est visualiser les différences (entre les colonnes 1 à 5 de "Global" et les colonnes 1 à 5 de "A_comparer", suite à l'apport des nouvelles données; pour suppressions, ajouts ou modifications à apporter manuellement sur les colonnes 1 à 5 de "Global".
    Le restant des informations de "Global" (au delà des colonnes 1 à 5) doit rester bien en phase avec les lignes déjà crées, lors de modifications.

    La feuille "Global" contient donc l'historisation de toutes les modifs de factures, et est perpétuellement mise à jour..


    Merci.
    Max60
    Fichiers attachés Fichiers attachés

  4. #4
    Membre Expert
    Inscrit en
    Décembre 2002
    Messages
    993
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 993
    Par défaut
    Voilà, j'ai quelque peu modifié ta macro.

    SuivisFactures-3.xlsm

  5. #5
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 121
    Par défaut
    Salut

    A mon avis, le plus simple, c'est d'importer les deux listes dans PowerQuery, de faire un join en ne gardant que les différence entre les deux tableaux (en fonction de critères à définir : quelles colonnes doivent être identiques pour considérer les deux lignes comme identiques).

    [Edit]
    Un exemple en PJ sans macro.
    Tu ajoutes des entrées dans la table "A_Comparer".
    Ensuite du mets à jour la table "Tab_Comp", tu obtiendras toutes les lignes qui existe dans A_Comparer mais qui sont absentes de Tab_Suivi Global

    Pour info, tu as une option à cocher dans le option des tableaux structurer par ajouter une ligne de total, tu n'as pas à le faire à la main
    [/Edi]

    ++
    Qwaz
    Fichiers attachés Fichiers attachés

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France, Oise (Picardie)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 146
    Par défaut
    Bonjour à vous deux,

    Merci déjà pour vos implications et partages de connaissances qui sont souvent très appréciés.

    @Qwazerty :
    Effectivement votre idée d'utiliser PowerQuery est aussi une bonne solution.
    N'ayant jamais utilisé ce Prg, j'avais essayé de visualiser s'il était capable de m'amener à mes attentes..
    Hormis le fait que l'on à quelques fois l'impression au début, que le paramétrage un peu peu compliqué, je n'était pas parvenu à ce que j'attendais.

    Votre PJ très gentiment préparée, me confirme que cela fonctionne, mais ne peut (en l'état) me donner les infos d'avertissement (lignes modifiées, lignes supprimées, lignes nouvelles, N°lignes) , qui sont bien appréciables pour effectuer les modifications sur de grand tableaux..


    @Franc :
    Merci bien sur, à vous aussi, pour votre cogitation et vos lignes VBA fonctionnelles !
    Par contre, hier soir en ayant fait l'essai avec plus de données, je me suis aperçu que des lignes étaient considérées comme supprimées au modifiées, alors qu'en réalité , elles ne l'étaient pas.

    J'ai donc décidé de réduire de nouveau la quantité de lignes à traiter et au final, de placer les mêmes données sur les 2 tableaux a comparer.

    Je suis dessus encore ce matin, et essaye de trouver (malheureusement en vain !) la subtilité qui nous gêne ...

    Par ailleurs, j'ai vu que vous vous étiez affranchi des Pb de points ou virgules, ainsi que des dates, pour plus de sécurité. Merci.
    Par contre, le N° de ligne prévu dans la deuxième colonne ajoutée au tableau, n'est pas fonctionnelle.
    J'ai essayé d'y remédier mais mes soucis de vision 'juvénile' avec la gestion des tableau ne m'ont pas permis (bien sur..) une nouvelle fois, d'aboutir.
    J'ai enlevé les modifs que j'avais effectuées..

    Ci-joint, éventuellement, votre fichier en version modifiée 3-3 comportant les défauts.

    Bien cordialement.
    Max60.
    Fichiers attachés Fichiers attachés

  7. #7
    Membre Expert
    Inscrit en
    Décembre 2002
    Messages
    993
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 993
    Par défaut
    Salut, teste ceci:

    SuivisFactures-3-3.xlsm

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

Discussions similaires

  1. comparaison tableaux (différence)
    Par paf26 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 25/03/2014, 17h06
  2. Suivis de compte avec graph
    Par SuperGolgoth dans le forum Conception
    Réponses: 3
    Dernier message: 06/05/2010, 20h28
  3. [Tableaux] prendre en compte des paramètres
    Par schwarzy2 dans le forum Langage
    Réponses: 7
    Dernier message: 13/11/2008, 11h39
  4. [Tableaux] Tri et compte sur tableau
    Par olbouss dans le forum Langage
    Réponses: 6
    Dernier message: 21/07/2008, 22h39
  5. comparaison tableaux
    Par ouadii dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 18/09/2007, 19h54

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