> Tous les forums > Forum Bureautique
 Fusion fichiers CSV en 1 seule fichier XLS
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
NEPOMUK
  Posté le 26/12/2008 @ 20:27 
Aller en bas de la page 
Petit astucien

Bonsoir

Je récupère chaque jour un fichier CSV à partir de l'onduleur de mon installation photovoltaïque (mon cadeau du Père Noël 2008) , en fin de mois, je me retrouve avec 30 fichiers au format "2008122600.csv".

En fin de mois, je souhaiterai fusionner tous ces fichiers CSV en un seul et même fichier XLS rassemblant ces informations et dans une même feuille de préférence.

Voici ci-dessous l'aspect du fichier CSV du 25/12

Merci de votre aide et de vos précieux conseils.

Je vous adresse à tous ainsi qu'à PCA, mes très bons voaux pour 2009 et .... une très longue vie.

JM EN GARDOUNENQUE

Version CSV1|Tool SDC|Linebreaks CR/LF|Delimiter semicolon|Decimalpoint dot|Precision 3| SBeam014 SN:140025452 SBeam014 SN:140025452 SBeam014 SN:140025452 SBeam014 SN:140025452 SBeam014 SBeam014 SBeam014 SBeam014 140025452 140025452 140025452 140025452 CO2-Tag Ertrag-Tag Pac E-Tag TimeStamp Counter Counter Counter Counter DD.MM.YYYY hh:mm:ss kg CO2 EUR W kWh 25.12.2008 23:59:59 1.512 1.240 2.160

Publicité
Marmotte18
 Posté le 27/12/2008 à 11:30 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bonjour NEPOMUK,

Pour l'un de tes fichiers .csv :

  • ouvre Excel
  • clique sur l'icône "ouvrir"
  • met dans le champ "type de fichier" la valeur "tous les fichiers" à l'aide de la liste déroulante
  • recherche ton fichier dans le champ "regarder dans" à l'aide de la liste déroulante et valide
  • copie le séparateur vertical de ton fichier .csv
  • colle le dans la case "Autre" et décoche les autres cases

  • clique sur le bouton "suivant"
  • clique sur le bouton "terminer"
  • clique sur fichier < enregistrer sous
  • choisi le champ "type de fichier" = Classeur Microsoft Office Excel
  • donne un nom de fichier
  • choisi l'endroit où tu veux sauvegarder ton fichier dans le champ "Enregistrer dans"
  • clique sur le bouton "enregistrer"

ci-joint ton fichier : http://cjoint.com/?mBmy4GJSzb

Par des copier-coller successifs sur une feuille "récap", tu peux donc fusionner tous tes fichiers



Modifié par Marmotte18 le 27/12/2008 12:05
DjiDji59430
 Posté le 27/12/2008 à 18:15 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bonsoir,

Il me semble que la mise en forme a l'air plus compliqué !

Surtout que les 5 dernieres valeurs : 25.12.2008 23:59:59 1.512 1.240 2.160

devraient, a mon sens, etre en dessous des 5 precedentes :DD.MM.YYYY hh:mm:ss kg CO2 EUR

Nepomuk devrait plutot joindre l'original de son fichier.csv

Nepomuk, pour joindre un fichier, aller la

pour la Marmotte, j'ai super apprecié le coup du choix des images. J'ai galéré comme un malade pour en rajouter une troisieme, surtout que comme un malin, je n'avais pas lu le debut - vieille mauvaise habitude ! -de l'explication (importer une image)




Modifié par DjiDji59430 le 27/12/2008 18:16
NEPOMUK
 Posté le 04/01/2009 à 19:55 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonsoir et merci pour votre aide

Un des fichier CSV est ici http://cjoint.com/?beuODbeD0s

Sur un autre forum, un gars m'a fait la réponse suivante

Merci de me préciser comment faire pour ouvrir une fenêtre DOS dans le dossier contenant mes fichiers ??

A très bientôt

Je ne connais pas la structure interne de vos fichiers, mais s'il s'agit uniquement de les concaténer, un moyen simple est le suivant :
- vous ouvrez une fenêtre DOS dans le dossier contenant vos fichiers
- vous tapez la commande suivante :
type *.csv > Le_nom_du_mois.csv

Tapez exactement ce que je viens de mettre en changeant "Le_nom_du_mois" par le mois concerné

ELLIPIR
 Posté le 17/02/2011 à 11:05 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Nouvel astucien
Marmotte18 a écrit :

Bonjour NEPOMUK,

Pour l'un de tes fichiers .csv :

  • ouvre Excel
  • clique sur l'icône "ouvrir"
  • met dans le champ "type de fichier" la valeur "tous les fichiers" à l'aide de la liste déroulante
  • recherche ton fichier dans le champ "regarder dans" à l'aide de la liste déroulante et valide
  • copie le séparateur vertical de ton fichier .csv
  • colle le dans la case "Autre" et décoche les autres cases

  • clique sur le bouton "suivant"
  • clique sur le bouton "terminer"
  • clique sur fichier < enregistrer sous
  • choisi le champ "type de fichier" = Classeur Microsoft Office Excel
  • donne un nom de fichier
  • choisi l'endroit où tu veux sauvegarder ton fichier dans le champ "Enregistrer dans"
  • clique sur le bouton "enregistrer"

ci-joint ton fichier : http://cjoint.com/?mBmy4GJSzb

Par des copier-coller successifs sur une feuille "récap", tu peux donc fusionner tous tes fichiers

Bonjour

je ne comprend pas bien le passage entre la recherche du fichier csv et la copie du separteur.

j'ai a peu pres une centaine de fichiers csv a fusionner il sont strictement identiques au niveau des colonnes, il y a juste

le nombre de lignes qui change

Merci d'avance pour vos eclaircissements

galopin01
 Posté le 17/02/2011 à 11:43 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Hi !

Déterrage :

Depuis Noêl 2008 j'espère que notre ami à trouvé une solution !

denewton
 Posté le 17/02/2011 à 17:24 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bonjour,

les fichiers csv sont des fichiers en format texte. Dans word charger le premier fichier, puis insérer à la suite les différents fichiers (enlever les lignes vides).

Sauvegarder comme un texte (extension csv ou txt)

Sous excel ouvrir ce document et nettoyer éventuellement s'il y a des entêtes qui se répètent.

Cordialement

Bertrand



Modifié par denewton le 17/02/2011 17:25
ELLIPIR
 Posté le 17/02/2011 à 17:39 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Nouvel astucien

Merci denewton

si j'ouvre mon .cdv avec word j'obtiens +/- mes données séparées par des ; .

comment dois je faire pour inserer sous 2007 ? inseret objet ?

il semblerait qu'il faille ouvrir les fichiers les uns apres les autres.

Cela pourarit etre fastidieux avec ma centaine de fichiers.

Y aurait-il une solution plus "automatique" qui prenne en compte une selection de fichiers du meme type ?



Modifié par ELLIPIR le 17/02/2011 17:39
denewton
 Posté le 17/02/2011 à 19:45 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bonjour,

J'ai word 97 et pas 2007. Je fais insertion-fichier comme on fait insertion-image pour mettre un image dans le texte. Est-considéré comme un objet ? Je n'en sais rien. Quand tu fais insertion-objet que te propose W2007 ? Dans open office insertion-objet existe mais ce n'est pas bon. Il y a insertion-fichier.

Il faut insérer tous les fichiers les un après les autres, oui. Peuut-être exise-t-il un programme qui concatène plusieurs fichiers sans passer par word (ce sont des fichier sans entête ni fin de fichiers spécifiques comme c'est le cas d'un fichier .DOC

Cordialement

Bertrand

galopin01
 Posté le 17/02/2011 à 21:07 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

bonsoir,

Tu aurais du monter ton propre sujet...

Il est possible de récupérer cela rapidement dans Excel avec une petite macro.

Une condition préalable est que tous les .csv à récupérer soient dans le même répertoire (et bien sur qu'il n'y ait pas d'autres .csv à ignorer)

c'est Ok ?

denewton
 Posté le 17/02/2011 à 23:17 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bonsoir,

Trouve un programme pour concaténer les dit fichiers, puis qu'ils sont des fichiers de type texte ou demande comment faire un script qui le fasse. (mais il faudra probablement mettre la liste des fichiers à concaténer quelque part)

Cordialement

Bertrand

Sous dos c'est je crois

fichier_n.csv >> fichier_résultat.csv

autant de fois qu'il y a de fichier ou faire une boucle qui lit le nom des fichiers un par un dans une liste jusqu'à épuisement de la liste.

ELLIPIR
 Posté le 18/02/2011 à 08:40 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Nouvel astucien
galopin01 a écrit :

bonsoir,

Tu aurais du monter ton propre sujet...

Il est possible de récupérer cela rapidement dans Excel avec une petite macro.

Une condition préalable est que tous les .csv à récupérer soient dans le même répertoire (et bien sur qu'il n'y ait pas d'autres .csv à ignorer)

c'est Ok ?

Oui galopin01 tous les fichiers seront dans le meme repertoire au pire je les aurais deplacés dans un seul .

NEPOMUK
 Posté le 18/02/2011 à 09:37 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

C'est bon, je me suis débrouillé, j'ai créé un fichier qui concatène ceux contenus dans un fichier, merci.

galopin01
 Posté le 18/02/2011 à 11:29 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Salut,

C'est tant pis : Je donne quand même la soluce en VBA.

Copier cette macro dans un module de classeur vide :

Sub test()
Dim k%, myWay$, myFile$, FileN$
Application.ScreenUpdating = False
k = 1
myWay = "C:\...\Utilisateur\Mes documents\@PERS\_EXC\"
myFile = Dir(myWay & "*.csv")

Do While myFile <> ""
FileN = Left(myFile, Len(myFile) - 4) & ".txt"
FileCopy myWay & myFile, myWay & FileN

Workbooks.OpenText Filename:=myWay & FileN, Origin:=xlWindows, _
StartRow:=1, DataType:=xlDelimited, Semicolon:=True
With ActiveWorkbook
.Sheets(1).Range("A1").CurrentRegion.Copy ThisWorkbook.Sheets(1).Range("A" & k)
k = ThisWorkbook.Sheets(1).Range("A65536").End(xlUp).Row + 1
.Saved = True
.Close
End With

myFile = Dir
Loop
End Sub

YA juste à remplacer le chemin (en rouge) du répertoire ou se trouvent les .csv. Attention à ne pas oublier le dernier "\"

PS : Merci de marquer le sujet en résolu.

denewton
 Posté le 18/02/2011 à 23:52 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien
denewton a écrit :

Sous dos c'est je crois

fichier_n.csv >> fichier_résultat.csv

autant de fois qu'il y a de fichier ou faire une boucle qui lit le nom des fichiers un par un dans une liste jusqu'à épuisement de la liste.

Bonjour,

milles excuses c'est plutôt "type fichier_n.csv >> fichier_resultat.csv", l'instruction "type" permettant de lire de a à z le fichier.

Bertrand

il y a une autre réponse dans ce sens en https://forum.pcastuces.com/aide_pour_fusionner_beaucoup_de_fichier_csv-f23s28014.htm



Modifié par denewton le 19/02/2011 10:44
dompod
 Posté le 14/12/2012 à 18:21 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Nouvel astucien

Bonjour,

Mieux vaut tard que jamais ! Je me permets d'apporter ma contribution parce que j'ai créé un outil qui permet de faire pile ce dont tu as besoin.

C'est en ligne est c'est gratuit : www.podbox.com

Tu peux injecter autant de fichier CSV que tu veux, ils peuvent même avoir des structures différentes, et récupérer le tout en CSV ou XLS.

Je suis preneur de retours pour l'améliorer sur des cas d'usage variés, alors n'hésite pas !



Modifié par dompod le 14/12/2012 18:24
Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
135,54 €SSD WD Black SN850 2 To (PCIe Gen4, NMVe M.2, 7000 Mo/s) à 135,54 € livré
Valable jusqu'au 26 Mai

Amazon Allemagne fait une promotion sur le SSD WD Black SN850 2 To (NMVe M.2) qui passe à 130,99 € (avec la TVA ajustée). Comptez 4,55 € pour la livraison en France soit un total de 135,54 € livré alors qu'on le trouve ailleurs à partir de 150 €.

Ce SSD utilise une interface M.2 NVMe PCIe Gen4 pour une connexion simple et des performances exceptionnelles : jusqu’à 7000 Mo/s en lecture séquentielle et jusqu’à 5300 Mo/s en écriture séquentielle. Le SSD est doté de la technologie 3D TLC NAND haute densité offrant une endurance d’écriture durable et assorti d’une garantie de cinq ans. Ce SSD est compatible PS5.


> Voir l'offre
19,90 €Batterie externe Xiaomi Mi Power Bank 3 (10 000 mAh, charge rapide 18W) à 19,90 €
Valable jusqu'au 26 Mai

Amazon fait une vente flash sur la batterie externe Xiaomi Mi Power Bank 3 qui passe à 19,90 € au lieu de 25,99 €. Cette batterie offre une capacité de 10 000 mAh et la charge rapide bi directionnelle 18 W USB C. Un port MicroUSB est également présent ainsi que 2 ports USB.

A glisser dans votre sac pour recharger votre portable plusieurs fois en déplacement.


> Voir l'offre
8,89 €Puzzle Nuit étoilée sur le Rhône de Van Gogh Clementoni (1000 pièces) à 8,89 €
Valable jusqu'au 26 Mai

Amazon fait une promotion sur le puzzle Nuit étoilée sur le Rhône (Van Gogh) Clementoni (1000 pièces) à 8,89 € au lieu de 14,99 €. Un puzzle de 1000 pièces de dimensions 69 x 50 cm. Une façon unique de reproduire et de conserver les plus belles œuvres d'art, pièce par pièce. Museum Collection.


> Voir l'offre

Sujets relatifs
Fichier en lecture seule sur PowerPoint 2010
reconstitution fichier RAR scindé en sous-fichiers
Fichier en lecture seule avec Excel 2003 ?
Fusion étiquettes fichier excel dans word
Fichier en lecture seule
Lien hypertexte vers fichier en lecture seule
Fusion fichier Excel
Fusion fichier Word vers tableau excel (vers 2007)
Correspondance / fusion de 2 fichiers Excel
fichiers en lecture seule sur DD
Plus de sujets relatifs à Fusion fichiers CSV en 1 seule fichier XLS
 > Tous les forums > Forum Bureautique