Mise à jour de données d'un fichier vers un autre

Bonjour,

Je fais un peu de VBA mais pas au point de maitriser les boucles et autres joyeusetés !

Alors je me permets de soumettre ma problématique à des experts !

Contexte :

J'ai deux fichiers (fichier G et fichier DD)

Je reçois le DD tous les jours.

Dans le fichier DD des prix et des données de fournisseurs d'articles sont mis à jour tous les jours et passent en statut "closed" ou "rejected"

La macro est lancée depuis le fichier G

But de la manoeuvre : (fichiers en PJ)

Boucle

1 - La macro prends la première ligne du fichier DD.

2 - Elle va vérifier dans la colonne J si la date est la date du jour (sinon passage ligne suivante)

3 - Si date du jour dans colonne J, Elle vérifie ensuite le statut de traitement : si "closed" ou "Rejected" ( sinon passage ligne suivante)

4 - Enregistre (dans une variable?) les données de la ligne des colonnes A, B. (nous appellerons ref article 1 et 2)

5 - Elle prend les données de la ligne des colonnes : J, K, M, N, O, P, Q, R, S, U

6 - Va dans le fichier G,

7 - Recherche dans la colonne A du fichier G la ref article 1 (sinon cherche avec les données ref article 2, sinon donne message erreur "article non trouvé" => color la case de la colonne A du fichier DD en rouge, clic ok et continue la boucle)

8 - Lorsque l'article est trouvé dans le fichier G, la macro colle ( en respectant la mise en forme des cellules de destination) :

Case colonne J de DD vers case colonne J de la ligne de l'article trouvé dans le fichier G

Case colonne K de DD vers case colonne K de la ligne de l'article trouvé dans fichier G

Case colonne M de DD vers case colonne M de la ligne de l'article trouvé dans fichier G

Case colonne N de DD vers case colonne N de la ligne de l'article trouvé dans fichier G

Case colonne O de DD vers case colonne O de la ligne de l'article trouvé dans fichier G

Case colonne P de DD vers case colonne P de la ligne de l'article trouvé dans fichier G

Case colonne Q de DD vers case colonne Q de la ligne de l'article trouvé dans fichier G

Case colonne R de DD vers case colonne R de la ligne de l'article trouvé dans fichier G

Case colonne S de DD vers case colonne S de la ligne de l'article trouvé dans fichier G

Case colonne U de DD vers case colonne U et T de la ligne de l'article trouvé dans fichier G

Inscrit dans la cellule de la colonne V du fichier G la date du jour

Passe à la ligne suivante du fichier DD.

Quand plus d'articles en closed ou rejected à la date du jour message : copie ok "X" articles mis à jour.

Pour info voici le type de données dans les colonnes (peut servir pour les variables) :

M, P, S, T, U => que du texte

J, Q, Y => date

A, O, R, nombre entier (entre 0 et 9999999)

B => peut être du type "F564654-54564#moto 5465 debout"

Un GRAND merci d'avance à celles et ceux qui essayeront !

Remus

4fichierg.xlsx (754.78 Ko)
7fichierdd.xlsx (257.45 Ko)

Bonjour

Tu devrais joindre le fichier DD avec quelques lignes de données. Ce serait plus commode pour travailler dessus.

Bye !

Ah oui pardon, je fais ça au plus vite merci !

gmb a écrit :

Bonjour

Tu devrais joindre le fichier DD avec quelques lignes de données. Ce serait plus commode pour travailler dessus.

Bye !

C'est fait !

Merci j'avais oublié ce détail important !

Un essai à tester. Te convient-il ?

Bye !

8fichierg-v1.xlsm (734.32 Ko)

Impeccable !!!

Juste une question, comment puis intégrer cela "Case colonne U de DD vers case colonne U ET T de la ligne de l'article trouvé dans fichier G

Inscrit dans la cellule de la colonne V du fichier G la date du jour" car la macro que tu m'as faite ne le fait pas (la colonne U est copiée par contre)

Mais sinon un grand merci c'est exactement ça.

Remus

RemusV a écrit :

Juste une question, comment puis intégrer cela "Case colonne U de DD vers case colonne U ET T de la ligne de l'article trouvé dans fichier G

Désolé mais je ne comprends pas ce que tu veux dire.

RemusV a écrit :

Inscrit dans la cellule de la colonne V du fichier G la date du jour" car la macro que tu m'as faite ne le fait pas

OK : voir fichier joint

3fichierg-v2.xlsm (734.30 Ko)

En fait, l'info qui est prise dans la colonne U de DD doit être copiée dans les colonne U et T du fichier G, là elle la copie seulement dans la colonne U de G.

Et comme je n'ose pas modifier ton code trop technique pour moi....

Merci pour ces réponses rapides !

Remus

Nouvellle version

Bye !

12fichierg-v3.xlsm (734.34 Ko)

C'est parfait !

Merci beaucoup ! Grace à toi je vais gagner beaucoup de temps car ce sont des dizaines de mises à jour par jour et en fiabilité, recopiage à la main = erreurs possibles !

Merci vraiment !

Rechercher des sujets similaires à "mise jour donnees fichier"