Mise à jour d'un fichier source vers un fichier destination

Bonjour à tous

Je débute en VBA ; je bloque totalement sur mon sujet. J’ai déjà fait des macro pour copier coller des données mais là je me heurte à un gros soucis. Voici ce que je souhaite réaliser :

Mettre à jour un fichier avec les donnés d’un autre fichier

Cependant, les deux fichiers ne sont pas construis de la même manière (pas le même nombre de colonne)

Je vous fournis 2 fichiers simplifiés (car j’ai plus de 1500 référence à gérer dans mon planning)

1ère étape :

Dans le fichier Destination (format csv), voici les lignes qu’il faut modifier : 2 conditions :

 - Colonne C=0

 - Colonne B = Broyage ou conditionnement

Une fois ces lignes repérées on va chercher dans le fichier source le statut en colonne B (j’ai besoin des informations de la colonne A & B du fichier destination pour retrouver le statut dans le fichier source) :

 -Si le statut de destination est égal à 0 alors on ne fait rien

 -Si le statut dans le fichier source est égal à 1 et que dans le fichier destination le statut est égal à 0 alors on reporte 1 dans la ligne adéquat de la colonne C et H du fichier de destination

2ème étape :

Suite à la mise à jour de la 1ère étape, je dois mettre à jour les délais. Je dois renseigner au moins 4 semaines de planning source dans le fichier destination (le mieux serait de mettre ce nombre de semaines en variable)

Dans le fichier destination, voici les lignes qu’il faut modifier : 2 conditions

 -Colonne C=0

 -Colonne B = Broyage ou conditionnement

Une fois ces lignes repérées on va chercher dans le fichier source les dates de début et de fin en colonne C , D , E et F (j’ai besoin des informations de la colonne A & B du fichier destination pour retrouver le statut dans le fichier source) :

Dans le fichier source, on sélectionne les opérations qui se déroule de cette semaine à dans 4 semaines (cf fichier source les lignes en jaune) , ensuite on reporte les données les colonnes CDEF dans le fichier destination :

 -Dans les Colonnes D E F G

 -On insère un 1 dans la colonne H pour indiquer qu’i l y a eu un traitement

Je ne sais pas si cela est possible mais ça m’éviterai de passer des heures à mettre à jour le fichier chaque semaine.

Merci d’avance de votre aide

Cordialement

33fichier-source.xlsx (10.08 Ko)
29fichier-destination.csv (907.00 Octets)

Bonjour,

je souhaiterai connaître la démarche pour pouvoir coder cette macro ; je n'ai aucune idée comment je dois agencer mon code (boucle, variable, condition). Je continue de chercher de mon côté mais pourriez vous dégrossir un peu le terrain SVP ?

Merci d'avance

Cédric

Bonjour et bienvenue sur le forum

Un essai à tester.

Les deux fichiers doivent être ouverts.

Cela te convient-il ?

Bye !

49fichier-destination.csv (907.00 Octets)

Bonjour Gmb,

c'est parfaitement ce que je voulais ; un grand Merci.

une petite précision stp : pour la deuxième étape, j'ai besoin actuellement de transférer les délais sur 4 semaines (ce nombre de semaines pourra varier en fonction de la planification que l'on souhaite établir) . Seulement quand je déclenche l''exécution de la macro la mise à jour de délai se fait pour toute les lignes.

Je t’ai mis en jaune les lignes qui suivent la condition des 4 semaines. (S + 3  de la semaine 11/2015 à 14/2015)

Si tu parviens à résoudre cette contrainte peux tu mettre le nombre de semaine en variable stp ?

C’était déjà top mais après ça ce sera 100% terminé

Merci d’avance

Re bonjour

pour ma culture perso, tu déclare la variable wDest mais elle n'apparaît pas dans le code. Peux tu me dire à quoi elle sert donc ?

Merci

Bonjour

Je suis désolé mais je ne comprends pas.

Fais moi un exemple avec :

• Le tableau de départ

• Le tableau tel que tu veux l’obtenir

• Une explication sur ce que tu entends par ‘’transférer les délais sur 4 semaines’’

Quant à la variable wDest, j'ai dû penser en avoir besoin avant de comprendre que je pouvais m'en passer. Mais j'ai oublié de supprimer sa déclaration.

A te relire.

Bye !

bonjour Gmb,

ci joint le fichier source avec quelques explications.

J'ai tenté d'insérer la formule qui irait bien dans le code mais cela ne fonctionne pas.

Merci

Bonjour

Nouvelle version à tester.

Bye !

Bonjour à tous,

pour moi c'est tout bon.

Merci encore Gmb

Prelude

Rechercher des sujets similaires à "mise jour fichier source destination"