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 :

Copie de données avec tri sur doublons


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juillet 2014
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Juillet 2014
    Messages : 130
    Par défaut Copie de données avec tri sur doublons
    Bonjour,

    En espérant avoir un retour. J'ai vraiment besoin de votre aide si possible.
    Alors voici ce que je voudrais faire:
    J'ai des données que je veux enregistrer toutes les semaines dans un fichier excel. sauf que ces données font au maximum 5000lignes/semaine sachant que je veux le faire sur 2 années (donc on aura 5000*(52*2)semaines). Cette sauvegarde permettra de comparer les données d'une semaine x à une autre y. (la comparaison de données a déjà été traité dans un de mes discussions)
    Ma 1ère question est de savoir si Excel pourrais supporter autant de données sachant qu'il y aura des graphiques et autres onglets de données?

    D'un autre point, il y a une solution qui m'a été présenté pour réduire le nombre de lignes par semaine càd avoir moins de 5000lignes/semaine. Je m'explique:
    Dans mon classeur d'enregistrement de données "Delta",
    1. je copie la 1ère semaine (d'un classeur "X" vers "Delta") qui fait 5000lignes (dans le fichier j'en ai mis 21lignes).
    2. sur ma dernière colonne, je fais une concaténation (en colonne AM) par ligne de chaque cellules (pour avoir une longue chaine de caractère).
    3. pour ma 2èm semaine, je fais la même chose que pour la sem1. Après pour chaque référence d'affaire (colonne B) je compare la colonne de concaténation de la sem1 à la sem2.
    Si concaténation sem1=concaténation sem2, je supprime la ligne doublon sem2 et je marque 1 (pour montrer que la référence existe en semaine 1) dans une colonne ("AO").
    Si concaténation sem1<>concaténation sem2, ma ligne est gardé en dessous de celles de la sem1 et on marque 2 dans la colonne ("AO" correspondant au numéro de semaine)
    4. à la 3ème semaine, je compare sem 3 à sem2 & sem1 et j'exécute le même procédé que précédemment.
    Pour la sem4, je compare sem4 à sem1+sem2+sem3. et ainsi de suite^^
    Le fichier montre le résultat attendu (pour la semaine1, j'ai pas mis les 5000lignes car c'est just pour montrer le résultat)test cocaténation.xlsm

  2. #2
    Membre émérite Avatar de Nico Chg
    Homme Profil pro
    Apprenti ingénieur Business Development
    Inscrit en
    Juillet 2014
    Messages
    352
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Apprenti ingénieur Business Development
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2014
    Messages : 352
    Par défaut
    Bonjour,

    Pour le nombre de ligne/colonne maximum, tu peux aller voir >>> ici <<<

    Maximum, sur 2010, 1 millions et quelques lignes, pour 17000 colonne.

    donc ça devrait rentrer. Le détail dont tu dois t'occuper est la manière dont tu vas comparer tes données. Un tel nombre de données va certainement alourdir le procédé, je te conseillerais de stocker tes données dans des fichiers CSV, et de les lire via macro, pour plus de clarté.

    Ensuite, comme beaucoup de gens ici, je n'ouvre pas les classeurs en PJ. Peut être qu'une image nous présentant ce que tu veux pourrais faire l'affaire ?

    Ensuite, méfie toi des concaténation, une cellules dans Excel ne peux afficher "que" 255 caractères, je crois. Je n'en suis pas sûr, c'est un point qu'il faut étudier.

  3. #3
    Membre confirmé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juillet 2014
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Juillet 2014
    Messages : 130
    Par défaut
    Merci ta réponse!

    Citation Envoyé par Nico Chg Voir le message
    Pour le nombre de ligne/colonne maximum, tu peux aller voir >>> ici <<<
    Maximum, sur 2010, 1 millions et quelques lignes, pour 17000 colonne..
    Jutement j'avais déjà regardé mais comme tu l'as fait remarqué après mon inquiétude était que la comparaison soit lourde voir plante à cause du nombre de données à gérer.

    Citation Envoyé par Nico Chg Voir le message
    Un tel nombre de données va certainement alourdir le procédé, je te conseillerais de stocker tes données dans des fichiers CSV, et de les lire via macro, pour plus de clarté.
    Je n'ai jamais utilisé de fichiers CSV et ne sait comment y procéder sachant que ce fichier sera utiliser par plusieurs utilisateurs.

    Citation Envoyé par Nico Chg Voir le message
    Ensuite, comme beaucoup de gens ici, je n'ouvre pas les classeurs en PJ. Peut être qu'une image nous présentant ce que tu veux pourrais faire l'affaire ?.
    Ci dssous en image (j'ai masqué quelques colonnes)
    Nom : tab.jpg
Affichages : 331
Taille : 139,4 KoNom : tab2.jpg
Affichages : 244
Taille : 23,8 Ko

  4. #4
    Membre émérite Avatar de Nico Chg
    Homme Profil pro
    Apprenti ingénieur Business Development
    Inscrit en
    Juillet 2014
    Messages
    352
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Apprenti ingénieur Business Development
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2014
    Messages : 352
    Par défaut
    Il s'agit peut être d'une question indiscrète, mais que veux tu faire de tes données ?

    Veux tu simplement les consulter, ou as tu des traitements ultérieurs à faire dessus ?

    Un csv, comme une solution Access/SQL peuvent peut être répondre à tes questions, mais je ne sais pas ce que tu veux faire avec ces données

  5. #5
    Membre confirmé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juillet 2014
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Juillet 2014
    Messages : 130
    Par défaut
    J'ai des données que je copie ds un fichier et que je viens coller dans celui-ci afin d'avoir la trace des données chaque semaine. Donc mes données sont répertoriées par semaine.
    Par la suite, je veux permettre aux utilisateurs de faire une comparaison sur 2 semaines qu'ils choisiront dans liste deroulante. Il y aura aussi un graphique associé. De plus, il y aura un graphique général sur toutes les semaines existantes e ( ce graphique va varier en fonction des choix de critères dans des listes deroulants)

  6. #6
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    On ne le répètera jamais assez : Excel est fait pour calculer, pas pour gérer des données et encore moins des grandes quantités de données.
    Pour cela, mieux vaut passer sur des solutions de bases de données (MS Acces ou Open Base par exemple), c'est fait pour.

    Ca charge infiniment moins la mémoire et les limitations n'ont aucun rapport.

  7. #7
    Membre confirmé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juillet 2014
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Juillet 2014
    Messages : 130
    Par défaut
    Tout à fait d'accord avec toi mais on m'a imposé excel et je dois donc bosser avec! C'est pour cela que je me tourne vers vous et que je me dis que si jelimine les données en comparant à la sem 1 ça le réduirait le nombre de lignes^^

  8. #8
    Membre émérite Avatar de Nico Chg
    Homme Profil pro
    Apprenti ingénieur Business Development
    Inscrit en
    Juillet 2014
    Messages
    352
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Apprenti ingénieur Business Development
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2014
    Messages : 352
    Par défaut
    Je suis de l'avis de Menhir,

    Une solution avec Access devrait parfaitement convenir. Tu peux faire des liens entre Access et Excel, pour avoir des vues de tes tables, et ainsi faire comparaison, graphique et autres informations utile, mais je te suggère vivement de stocker tes informations ailleurs.

    La solution la plus pratique serait d'organiser une base de donnée Access, et de créer des vues via Access lui même, ou via Excel, si tu souhaite disposer des fonctions graphiques.

    Une autre solution serait de stocker tes données sur un csv, et de lire uniquement ce qui t'intéresse sur Excel, via des macro précise. L'accès à un fichier csv prend très peu de temps d’exécution, et ça reste plus pratique que de tout avoir sur Excel.

    Si malgré tout tu voudrais rester sur une solution purement Excel, quel est ton besoin ?

Discussions similaires

  1. form recherche Loufab avec tri sur lst_resultat
    Par thiefer dans le forum IHM
    Réponses: 10
    Dernier message: 09/10/2008, 09h10
  2. Réponses: 5
    Dernier message: 03/04/2008, 19h02
  3. SELECT DISTINCT avec tri sur un autre champ que celui du distinct
    Par Stephane_br dans le forum Langage SQL
    Réponses: 5
    Dernier message: 09/11/2006, 11h37
  4. Réponses: 7
    Dernier message: 22/05/2006, 14h44
  5. requete avec tri sur date erronée
    Par olivll dans le forum Access
    Réponses: 11
    Dernier message: 20/10/2005, 15h45

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