Macro open office, import csv
sambafr
Messages postés
8
Statut
Membre
-
sambafr Messages postés 8 Statut Membre -
sambafr Messages postés 8 Statut Membre -
Bonjour,
Merci de votre aide.
J'utilise un programme java (avec la Wii BB) qui enregistre apres chaque sequence un fichier csv avec les coordonnées de la sequence. Je voudrais faire une macro qui importe tous les csv du repertoire pour pouvoir les utiliser das un fichier open office calc. Je ne connais rien en VB, c'est pour un projet perso, si quelqu'un veut bien m'aider merci encore
Samba
Merci de votre aide.
J'utilise un programme java (avec la Wii BB) qui enregistre apres chaque sequence un fichier csv avec les coordonnées de la sequence. Je voudrais faire une macro qui importe tous les csv du repertoire pour pouvoir les utiliser das un fichier open office calc. Je ne connais rien en VB, c'est pour un projet perso, si quelqu'un veut bien m'aider merci encore
Samba
A voir également:
- Macro open office, import csv
- Open office gratuit - Télécharger - Suite bureautique
- Microsoft office - Guide
- Web office - Guide
- Save as pdf office 2007 - Télécharger - Bureautique
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
6 réponses
Salut,
si tu as une version d'excel < 2007 j'ai quelque chose pour toi de quasi tout prêt avec la méthode FileSearch, sinon... j'ai vu sur le net qu'il y a de quoi remplacer cette méthode mais il faut bidouiller un peu.
bref, let me know !
a+ed
si tu as une version d'excel < 2007 j'ai quelque chose pour toi de quasi tout prêt avec la méthode FileSearch, sinon... j'ai vu sur le net qu'il y a de quoi remplacer cette méthode mais il faut bidouiller un peu.
bref, let me know !
a+ed
Trop fort :-)
Je prend et je ferais la conversions après. Merci
PS: Si tu peux rajouter le lien que tu as trouvé pour la bidouille en + ca ferait (Merci++)x2
Je prend et je ferais la conversions après. Merci
PS: Si tu peux rajouter le lien que tu as trouvé pour la bidouille en + ca ferait (Merci++)x2
Bon alors ça donné à peu près ça :
Range("A1").Select
With Application.FileSearch
.NewSearch
.LookIn = verz 'là tu mets le lien du dossier où se trouvent tes .csv
.SearchSubFolders = False ' on empêche de chercher dans les sous-dossiers aussi
.filename = "*.csv"
.FileType = msoFileTypeExcelWorkbooks
.Execute
' ici je propose de stocker les noms des fichiers pour y accéder plus tard (les ouvrir, prendre tes données...)
For i = 1 To .FoundFiles.Count
ActiveCell.Value = Dir(.FoundFiles(i))
ActiveCell.Offset(1, 0).Select
Next i
filenumber = .FoundFiles.Count
End With
Et puis là tu as ce dont je te parlais à propos de FileSearch :
https://silkyroad.developpez.com/vba/classefilesearch/
Je crois que je ne peux pas faire plus ! (à part une pipe et un mars)
a+ed
Range("A1").Select
With Application.FileSearch
.NewSearch
.LookIn = verz 'là tu mets le lien du dossier où se trouvent tes .csv
.SearchSubFolders = False ' on empêche de chercher dans les sous-dossiers aussi
.filename = "*.csv"
.FileType = msoFileTypeExcelWorkbooks
.Execute
' ici je propose de stocker les noms des fichiers pour y accéder plus tard (les ouvrir, prendre tes données...)
For i = 1 To .FoundFiles.Count
ActiveCell.Value = Dir(.FoundFiles(i))
ActiveCell.Offset(1, 0).Select
Next i
filenumber = .FoundFiles.Count
End With
Et puis là tu as ce dont je te parlais à propos de FileSearch :
https://silkyroad.developpez.com/vba/classefilesearch/
Je crois que je ne peux pas faire plus ! (à part une pipe et un mars)
a+ed
J abuse mais j ai une question.
Imagine: Pour chaque csv, Si B1 est valeur yes et B2 est > 5 je veux prendre les cellules B5 à B12 et faire une moyenne sur ma nouvelle feuille. Tu as une idée comment faire ça?
Merci de ton aide, désolé
Samba
Imagine: Pour chaque csv, Si B1 est valeur yes et B2 est > 5 je veux prendre les cellules B5 à B12 et faire une moyenne sur ma nouvelle feuille. Tu as une idée comment faire ça?
Merci de ton aide, désolé
Samba
Salut sambafr,
Sur le principe c'est comme ça (il faut dire que tu n'es pas clair sur ta "nouvelle feuille" ???) :
dim masomme as Single
dim mamoyenne as Single
If Range("B1").Value = "yes" And Range("B2").Value > 5 Then
Range("B2").Value.Select
Application.Sum(Selection) = masomme
mamoyenne = masomme / 8
Sheets("Ta nouvelle feuille").Activate
RAnge("A1").Value = mamoyenne
End if
Est ce que ça colle ?
a+ed
PS : si non, sois plus précis...
Sur le principe c'est comme ça (il faut dire que tu n'es pas clair sur ta "nouvelle feuille" ???) :
dim masomme as Single
dim mamoyenne as Single
If Range("B1").Value = "yes" And Range("B2").Value > 5 Then
Range("B2").Value.Select
Application.Sum(Selection) = masomme
mamoyenne = masomme / 8
Sheets("Ta nouvelle feuille").Activate
RAnge("A1").Value = mamoyenne
End if
Est ce que ça colle ?
a+ed
PS : si non, sois plus précis...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
"De toute façon, le Basic de Microsoft est incompatible avec celui de OpenOffice.org."
Si tu as une solution en OO je prends mais en attendant je remercie ed pour sa solution que j'ai d'ailleurs du mal a appliquer (je ne sais pas comment utiliser la macro que tu as ecris).
Ed excuse moi de ne pas avoir été clair:
J'ai 200 fichiers csv appelé datenom.csv . Dans ces fichiers il y les resultats de mon etude avec la Wii BB. Je veux utiliser le resultat du fichier 061009ClaireFry.csv seulement si la cellule b2 est yes et la celule b3 est > 5 (cellules du fichier 061009ClaireFry.csv) .
Ensuite,lorsque j'execute la macro, je voudrais par exemple faire la moyenne de toutes les cellules B6 des fichiers incluent dans l'etude (cad ceux qui ont B1 yes et B2 >5) ou trouver une autre maniere de manipuler les cellules des fichiers facilement pour faire des stats (les resultats pertinents sont entre B2 et B8, mais il y a des lignes et des lignes de données que je ne vais pas utiliser). Si tu veux que je t'envoie un fichier csv pour que tu comprennes pas de souçi
Est ce que c'est plus claire?
Merci ++ de ton aide.
Samba
Si tu as une solution en OO je prends mais en attendant je remercie ed pour sa solution que j'ai d'ailleurs du mal a appliquer (je ne sais pas comment utiliser la macro que tu as ecris).
Ed excuse moi de ne pas avoir été clair:
J'ai 200 fichiers csv appelé datenom.csv . Dans ces fichiers il y les resultats de mon etude avec la Wii BB. Je veux utiliser le resultat du fichier 061009ClaireFry.csv seulement si la cellule b2 est yes et la celule b3 est > 5 (cellules du fichier 061009ClaireFry.csv) .
Ensuite,lorsque j'execute la macro, je voudrais par exemple faire la moyenne de toutes les cellules B6 des fichiers incluent dans l'etude (cad ceux qui ont B1 yes et B2 >5) ou trouver une autre maniere de manipuler les cellules des fichiers facilement pour faire des stats (les resultats pertinents sont entre B2 et B8, mais il y a des lignes et des lignes de données que je ne vais pas utiliser). Si tu veux que je t'envoie un fichier csv pour que tu comprennes pas de souçi
Est ce que c'est plus claire?
Merci ++ de ton aide.
Samba