récupérer chaque jour des donées dans un nouveau fichier Excel

récupérer chaque jour des donées dans un nouveau fichier Excel - VB/VBA/VBS - Programmation

Marsh Posté le 27-07-2006 à 14:50:15    

Bonjour,
 
Je calcule au jour le jour la valeur d'un bien, pour cela je doit créer chaque jour un fichier Excel nommé selon le shémat suivant : "nom, datedujour"
Ces fichiers se composent de plusieurs onglets dont le dernier reprend tous les éléments de la valeur du jour (nommé "valo" ).
Je cherche à créer, dans un nouveau classeur, un historique me permettant de mettre en liste les valeurs de chaque jour en face de la date correspondante.
Pourriez vous m'aider à créer la macro qui m'éviterais de faire un copier coller chaque jour ?
 
D'avance merci

Reply

Marsh Posté le 27-07-2006 à 14:50:15   

Reply

Marsh Posté le 27-07-2006 à 14:52:06    

T'as fait quoi ?

Reply

Marsh Posté le 27-07-2006 à 15:33:24    

Déja sache que je débute en VBA.
Note que j'ai commancé par faire simple : une formule "=cheminaccesclasseur+nomclasseur+onglet+adressecellule" mais je suis bloqué losque j'essaie d'intégrer une formule "today" au sein du nom du classeur.
Donc j'ai commencé le fichier en saisissant le nom du fichier à la main. Pas de problème quand je travaille sur un fichier existant. par contre excel me renvoie une formule d'erreur losque les fichier (de demain et des jours suivants) n'éxistent pas encore. Et même une fois que le fichier a été créé ça ne marche pas super bien : je dois choisir le fichier que je cherche comme s'il s'agissait d'une pièce jointe.
 
Tout ça pour dire que je cherche à faire un truc tout con et que je crois qu'une macro pourrais bien m'aider.
 

Reply

Marsh Posté le 27-07-2006 à 15:44:37    

Le "nom" de tes fichiers quotidiens est toujours le même ?
Tous ces fichiers quotidiens sont dans le même répertoire ?
Et tu veux un fichier de synthèse qui te reprend toutes les valeurs de l'onglet <quel nom> ?.
C'est bien ca ?

Reply

Marsh Posté le 27-07-2006 à 15:48:27    

bah utilises la fonction Format(date, "yyyymmdd" ) pour construire le nom de fichier

Reply

Marsh Posté le 27-07-2006 à 15:49:24    

- le nom de mes fichiers est construit comme suit : "valo_carav060724", "valo_carav060725", valo_carv060726"...
Tous les matins je fais un save as et je renome le fichier avec la date du jour.

Reply

Marsh Posté le 27-07-2006 à 15:53:34    

Scuse, je continue
- mes fichiers sont tous dans le même répertoire
- mon fichier de synthese doit reprendre les valeur situés en cellules E4, E5, E6, E7, E8, E9, E10 et E14 de l'onglet <quel nom>

Reply

Marsh Posté le 27-07-2006 à 15:54:16    

ok je regarde ce que ça donne

Reply

Marsh Posté le 27-07-2006 à 16:03:31    

Ce que je tre propose c'est de récupérer les fichiers de ton répertoire qui ont la structure "valo_caravaammjj".
Pour chacun de ces fichiers
   récupérer les valeurs des cellules E5, E6, ..E14
   Mettre à jour ton fichier de synthèse en fonction du nom du fichier et du nom de la colonne de ton fichier de synthèse (la date).
En clair ton fichier ed synthèse à cette tête la :
 
    060725  060726   060727   060728
E4   val14    val24    val31       val41
E5    val51
...
E14

Reply

Marsh Posté le 27-07-2006 à 16:05:20    

Pour réucpérer les fichiers de ton répertoire :
 
Dim fso As Object, dossier As Object, sousRep As Object, fich As Object
 
  Set fso = CreateObject("Scripting.FileSystemObject" )
  Set dossier = fso.GetFolder("Y:" )
  'Nom est la racine des fichiers : "valo_carav060724
  Nom = "valo_carav"
  'examen du dossier courant
  For Each fich In dossier.Files
    If fich.Name Like "valo_carav*" Then
        Datefichier = Mid(fich.Name, Len(Nom) + 1, 6)
        Valeurcherchee = GetValueWithADO(fich.Name, TaFeuille, TaCellule)
        Call MajValSynthese(Datefichier, Valeurcherchee)
        msg = Datefichier & vbCrLf & msg
    End If
  Next
Pour la fonction GetValueWithADO(fich.Name, TaFeuille, TaCellule)
voir http://frederic.sigonneau.free.fr/ [...] tValue.txt
 il te reste la procedure MajValSynthese(Datefichier, Valeurcherchee) qui te permet de mettre à jour ton fichier de synthèse.

Reply

Marsh Posté le 27-07-2006 à 16:05:20   

Reply

Marsh Posté le 28-07-2006 à 14:54:32    

Bonjour,
J'ai essayé la procédure que tu me propose mais j'arrive à rien... pourtant ça m'a pas l'air insurmontable..
 
je crois que je vais commencer par aller m'acheter demain le "VBA Excel pour les nuls" (je pense que ça peut pas me faire de mal) et que je vais revenir vers toi plus tard
 
A très vite donc, merci encore

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed