Ouvrir un Csv trop volumineux + faire des requêtes
Résolu
Julien002
-
julien002 -
julien002 -
A voir également:
- Ouvrir un fichier csv trop volumineux
- Ce jeu de données est trop volumineux pour la grille excel - Meilleures réponses
- Ouvrir fichier csv volumineux - Meilleures réponses
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire un fichier trop volumineux - Guide
- Comment ouvrir un fichier bin ? - Guide
- Ouvrir un fichier .dat - Guide
- Comment ouvrir un fichier docx ? - Guide
5 réponses
Bonjour,
avec une version récente d'"excel tu peux aller dans 'Données / A partir d'un fichier texte/CSV' pour le traiter avec Power Query.
Importes ton fichier, en bas bouton 'Transformer les données'.
Sélectionne ta colonne et 'Regrouper par' et tu valides.
Clic-droit sur les colonnes du tableau si tu veux ajouter des traitements, sinon 'Fermer et charger' pour récupérer ton tableau dans une feuille.
eric
avec une version récente d'"excel tu peux aller dans 'Données / A partir d'un fichier texte/CSV' pour le traiter avec Power Query.
Importes ton fichier, en bas bouton 'Transformer les données'.
Sélectionne ta colonne et 'Regrouper par' et tu valides.
Clic-droit sur les colonnes du tableau si tu veux ajouter des traitements, sinon 'Fermer et charger' pour récupérer ton tableau dans une feuille.
eric
Bonjour Eric,
Vous trouverez ci dessous le lien avec des données bidons :
https://www.cjoint.com/c/JFvnfS7RuAH
Ma requête serait de garder uniquement les lignes où il y a "19" dans la colonne "date" et de récupérer les nombres d'occurrences des valeurs présentes dans la colonne "Entreprise".
Merci d'avance
Julien
Vous trouverez ci dessous le lien avec des données bidons :
https://www.cjoint.com/c/JFvnfS7RuAH
Ma requête serait de garder uniquement les lignes où il y a "19" dans la colonne "date" et de récupérer les nombres d'occurrences des valeurs présentes dans la colonne "Entreprise".
Merci d'avance
Julien
Je ne connaissais pas Power Query dans Excel. Comme tout outil il doit falloir se former sur les bases avant d'attaquer.
https://docs.microsoft.com/fr-fr/powerquery-m/
Voilà ce que j'ai appliqué, suivant les indications d'eriiic, dans Excel 2016 : Données/Nouvelle requete/A partir d'un fichier/fichier CSV, donner emplacement fichier csv
Une fois le fichier présenté cliquer Modifier
Sur la 1ere date, clic-droit/filtre chronologique/Postérieur ou égal, cela génère une requete dans le bloc de droite "lignes filtrées", cliquer sur ce nom de requete, on peut alors faire une selection >=01/01/2019 et <01/01/2020, on a alors tout 2019
Dans la barre de menu "Regrouper par" / Entreprise/Nombre/Compter
Puis fermer et charger, on a alors le résultat dans excel :
Et si on revient dans PQ, sur "Editeur avancé", on obtient la requete, où on retrouve la selection et le regroupement. Il faudrait, je pense, apprendre le langage pour les besoins plus évolués, non couverts par les requetes guidées
En important une nouvelle fois le fichier CSV et appliquant dans "Editeur Avancé" le code ci-dessus, on obtient le résultat sans passer par les étapes guidées. Le code est donc transportable.
https://docs.microsoft.com/fr-fr/powerquery-m/
Voilà ce que j'ai appliqué, suivant les indications d'eriiic, dans Excel 2016 : Données/Nouvelle requete/A partir d'un fichier/fichier CSV, donner emplacement fichier csv
Une fois le fichier présenté cliquer Modifier
Sur la 1ere date, clic-droit/filtre chronologique/Postérieur ou égal, cela génère une requete dans le bloc de droite "lignes filtrées", cliquer sur ce nom de requete, on peut alors faire une selection >=01/01/2019 et <01/01/2020, on a alors tout 2019
Dans la barre de menu "Regrouper par" / Entreprise/Nombre/Compter
Puis fermer et charger, on a alors le résultat dans excel :
Entreprise Nombre Apple 2 Cisco 1 Microsoft 1
Et si on revient dans PQ, sur "Editeur avancé", on obtient la requete, où on retrouve la selection et le regroupement. Il faudrait, je pense, apprendre le langage pour les besoins plus évolués, non couverts par les requetes guidées
let Source = Csv.Document(File.Contents("D:\JFvnfS7RuAH_test.csv"),[Delimiter=",", Columns=3, Encoding=1252, QuoteStyle=QuoteStyle.None]), #"En-têtes promus" = Table.PromoteHeaders(Source, [PromoteAllScalars=true]), #"Type modifié" = Table.TransformColumnTypes(#"En-têtes promus",{{"Entreprise", type text}, {"Date", type date}, {"Ville", type text}}), #"Lignes filtrées" = Table.SelectRows(#"Type modifié", each [Date] >= #date(2019, 1, 1) and [Date] < #date(2020, 1, 1)), #"Lignes groupées" = Table.Group(#"Lignes filtrées", {"Entreprise"}, {{"Nombre", each Table.RowCount(_), type number}}) in #"Lignes groupées"
En important une nouvelle fois le fichier CSV et appliquant dans "Editeur Avancé" le code ci-dessus, on obtient le résultat sans passer par les étapes guidées. Le code est donc transportable.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'aurai une dernière demande.
Grâce à Eric, j'ai pu récupérer le nombre d'occurrences des valeurs présentes dans une colonne.
Je voudrais refaire la même chose après avoir fait un filtre dans une autre colonne. En gros dans une autre colonne il y a des dates au format jj/mm/AA. J'aimerai garder les valeurs de 2019 et ensuite refaire le process pour récupérer le nombre d'occurrences dans une colonne.
Merci d'avance
Julien
si tu veux qu'on teste dépose un csv avec quelque valeurs bidons.
cjoint.com et coller ici le le lien fourni.
eric