Macro open office, import csv

sambafr Messages postés 8 Date d'inscription   Statut Membre -  
sambafr Messages postés 8 Date d'inscription   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
Configuration: Windows 7
Firefox 3.5.3

6 réponses

  1. ed
     
    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
    0
  2. sambafr Messages postés 8 Date d'inscription   Statut Membre
     
    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
    0
  3. ed
     
    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
    0
  4. sambafr Messages postés 8 Date d'inscription   Statut Membre
     
    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
    0
    1. ed
       
      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...
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. OOoForum Messages postés 3871 Date d'inscription   Statut Membre Dernière intervention   965
     
    De toute façon, le Basic de Microsoft est incompatible avec celui de OpenOffice.org.

    0
  7. sambafr Messages postés 8 Date d'inscription   Statut Membre
     
    "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
    0