Update automatique d'un fichier

OOLIVE

XLDnaute Occasionnel
Bonjour le forum,

Je me permet de venir vers vous afin d'avoir votre aide sur un sujet.

Pour mes besoins journaliers, je dois regarder des fichiers sources afin de copier/coller les lignes dans un fichier de suivi... c'est long et fastidieux et le risque d'erreur/oubli est consequent.

J'ai un double besoin a vrai dire... Je vais tenter une explication.

Dans un fichier source, des lignes sont ajoutees quotidiennement, et des informations sur des lignes deja existantes peuvent etre modifiees. Chaque ligne a une reference unique (colonneA).

J'aimerais savoir s'il m'etait possible de faire un update automatique de ces fichiers sources vers mon fichier recap.

1er besoin : pour les lignes deja copiees vers le fichier recap, je voudrais controler s'il y a eu des changements. S'il y a une information qui a change, alors j'aimerais que le recap soit mis a jour et que la/les cellule(s) qui a/ont ete modifiee(s) soit-ent mise(s) en couleur (orange par exemple).

2eme besoin : s'il y a une nouvelle ligne dans le fichier source, alors j'aimerais que certaines cellules soient copiees dans le recap et que la ligne (ou la cellule en colonneA) soit mis en couleur (vert par exemple).

Est-il possible egalement de faire un update automatique ? des qu'une info est saisie/enregistree/ un scheduler ?
J'ai des contraintes aussi : je ne peux pas mettre de codes sur les fichiers sources (pas la main dessus); tout doit etre fait sur mon recap.

Des idees ?

Vous remerciant par avance pour votre aides et vos idees.

Cheers !
 

sousou

XLDnaute Barbatruc
Bonjour
il faudrait connaître la forme de tes deux fichier
Principe à partir du fichier recap
tu ouvres source, tu contrôle toutes les lignes du fichiers source (ref unique) par rapport au fichier recap
si existe et different tu modifies mets une couleur, si n'existe pas tu ajoutes et mets une autre couleur
 

OOLIVE

XLDnaute Occasionnel
Bonsoir Sousou,

Merci pour ton retour.

Concernant la forme des fichiers,
- fichiers sources : il y a x colonnes (de A a BK), mais je n'utilise qu'environ 10 cellules dans mon recap
- fichier recap : il est ni plus ni ;oins compose de 10 colonnes que je viens recuperer dans mon fichier source.


Concernant le principe aue tu as indique, tu aurais des pistes a m'indiquer ?
Comment faire le comparatif de la colonneA
puis en fonction de la valeur de la colonneA, analyser les autres colonne du recap sachant que :
Exemple : la valeur de la colonne I du recap se trouve en colonne D ?

merci d'avance.
 

sousou

XLDnaute Barbatruc
re
Si je comprend tu ne compare que 10 colonnes sur l'ensemble des colonnes du fichier source
tu peux utiliser un tableau de correspondance:
exemple tabsource=array(1,3,5,8,9) tabrecap=array(1,2,3,4,5)
dans ce cas tu comparerais 5 colonnes la 1 de source avec la 1 de recap, la 3 de source avec la 2 de recap ect.....
 

OOLIVE

XLDnaute Occasionnel
Re,
C'est une soluton simple ? Je n'ai pas de connaissance sur les tableau de correspondance.
l'idee est de creer un tableau Ubond reprenant les 2 classeurs et comparer les informations en fonction de leur reference unique ?

Quelques idees de codage a utiliser ?

OOlive
 

sousou

XLDnaute Barbatruc
Bonjour
le plus simple serait de fournir deux fichiers exemples afin de pouvoir te montrer un exemple de la solution.
Si nous avons deux tableaux de correspondances. (ex: 5 valeurs)
pour chaque index (de 1 à 5) ont va trouver en lisant les tableaux le numéro des colonnes à comparer et ainsi pouvoir comparer les valeurs
 

OOLIVE

XLDnaute Occasionnel
Hello,

Ci-joint un fichier test. J'ai abrege mais l'idee est la..

Si un changement en source, alors modif en recap + mis en couleur
Si nouvelle ligne en source, alors adding de la ligne

Par ailleurs, dans la vraie vie, ce sont deux fichiers separes...

Comment je peux faire pour lancer une ;ise a jour du recap de maniere automatique ?

Merci beaucoup
 

Pièces jointes

  • Book1.xlsx
    10.5 KB · Affichages: 4

OOLIVE

XLDnaute Occasionnel
j'aime beaucoup :)

Ca correspond exactement a mon besoin...

Serais-tu comment je pourrais scheduler la macro ?

Y a t il un moyen de lancer la macro parmi les choix suivants ?
- des qu'une sauvegarde a lieu sur le fichier source
- plannifie (exemple : toutes les 10 minutes) ?

Merci infiniment

OOLIVE
 

sousou

XLDnaute Barbatruc
Re
Faux voir?, mais les deux solutions devraient être possibles
1/ sauvegarde sur le fichier source, en utilisant dans le fichier source ,l’événement aftersave de workbook (c'est le pluss imple)
2/ On peut aussi utiliser le scheduler de windows qui lance un vbs qui lui-même lance la macro de contrôle, j'ai déjà fait cela(il y a longtemps)
avantage, tu peux faire varier facilement le timing
 

sousou

XLDnaute Barbatruc
La vbs est un langage (vsisual basic scripting) contenu nativement dans Windows.
A partir d"un fichier Vbs qui se présente sous la forme d'un fichier txt avec extension vbs, l'interpréteur de windows va exécuter se fichier.
Ce fichier pourra aussi être démarrer par Windows dans son scheduler (planificatreur de tâches)
Dans ce fichier il sera ainsi possible d'ouvrir Excel et de lancer la macro correspondante.

Dans les fichiers joints, à positionner dans le même répertoire, l'ouverture de ouvertures.vbs, va ouvrir excel et lancer une macro
Nota: Le site n'acceptant pas les fichiers VBS, pour cause de sécurité, charge le fichier ouverture.txt, et renomme en ouverture.vbs
ATTENTION:Les fichiers VBS sont à manipuler avec précaution, pas de contrôle de sécurité, Ils peuvent être dangereux!
Ici il ne fait qu'ouvrir excel et lancer la macro
Ma bible en VBS : http://jc.bellamy.free.fr/fr/vbscript.html
 

Pièces jointes

  • ouverture.txt
    331 bytes · Affichages: 3
  • testexcel.xlsm
    12.1 KB · Affichages: 3
Dernière édition:

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
311 725
Messages
2 081 941
Membres
101 848
dernier inscrit
Djigbenou