Récupérer cellules d'un fichier sans l'ouvrir - VB/VBA/VBS - Programmation
Marsh Posté le 25-06-2009 à 07:24:02
Salut, voir http://forum.hardware.fr/hfr/Progr [...] 0232_1.htm et adapter
Marsh Posté le 25-06-2009 à 11:38:27
Merci kiki29 pour le lien.
J'ai bien testé et j'arrive à extraire ce que je veux.
Par contre, j'ai un petit souci car au début du code il faut déclarer des variables et des constantes.
Parmis les constantes, il y a le chemin du répertoire dans lequel on veut effectuer la récupération des données.
Code :
|
Et pour moi, le problème est que mes fichiers vont être sur un lecteur réseau partagé et les utilisateurs n'auront pas toujours la même lettre de lecteur...
Comment puis-je résoudre ce problème ???
Marsh Posté le 25-06-2009 à 22:43:34
Salut, Bis Repetita Placent, voir sur http://cjoint.com/?gzwKXSEUY6 un fichier qui devrait te convenir moyennant une adpatation à ton contexte
Marsh Posté le 08-07-2009 à 09:32:04
UP
J'ai réussi à faire ce que je voulais : récupérer les données de plusieurs fichiers XLS (ayant le même format) et pouvant se trouver sur un serveur réseau, ça marche très très bien...
Maintenant j'ai un autre souci :
quand je teste tout cela sur mon ordinateur (sur le disque c:\), le temps de traitement est très rapide... ma procédure prend grosso modo 52 secondes pour extraires 67 valeurs contenues dans les cellules de 21 fichiers... et ensuite il y a un process de totalisations diverses, bref !
quand je fais exactement le même test sur un serveur distant, le temps passe à 4 minutes et 17 secondes
c'est vraiement très long... surtout qu'au final, quand tout sera bien programmé, il y aura à peu près 200 fichiers à traiter...
peut-on accélérer ce traitement ?
Marsh Posté le 24-06-2009 à 22:07:18
Voici mon problème !
J'ai un dossier dans lequel j'ai des fichiers XLS :
- A.xls
- B.xls
- C.xls
- RECUP.xls
Les fichiers A, B et C ont exactement la même présentation : des données dans les 3 premières cellules, cote-à-cote.
- dans A.xls ---> TOTO1 TOTO2 TOTO3
- dans B.xls ---> TOTO4 TOTO5 TOTO6
- dans C.xls ---> TOTO7 TOTO8 TOTO9
Je souhaite faire une macro dans le fichier RECUP.xls qui va récupérer dans les 3 fichiers A, B et C.xls, les données des 3 premières cellules.
Et donc, sur 3 lignes :
TOTO1 TOTO2 TOTO3
TOTO4 TOTO5 TOTO6
TOTO7 TOTO8 TOTO9
Cela est-il possible sachant que je cherche à faire cela car les 3 fichiers A, B et C peuvent être en cours de modification au moment où la macro s'exécute... ?
Merci pour votre aide...
Précision : les fichiers A, B, C et RECUP.xls sont dans le même répertoire...