Bonjour à tous,
j'ai trouvé des brides de solutions un peu partout mais mon niveau VBA qui est assez basique ne me permet pas vraiment de décripter dans un temps acceptable (pour mon responsable).
Je vais essayer de formuler le plus clairement possible ma demande.
J'ai plusieurs fichiers, qu'on appellera NP ; PR ; SYNTHESE ; BBD
SYNTHSE est un fichier "interface" qui récupère les données brut de NP et PR (fichiers qui différencie les types de produits). Les données importés se mettent à jour automatiquement tous les jours (edit: quand je dis se mettent automatique à jour, c'est à dire que les données s'écrasent tous les jours). Je souhaite pour pouvoir faire des analyses créer un historique. Ces données sont également remis en forme par marque sur cette ligne.
Sur SYNTHESE j'ai donc une date du jour (en A1) et une ligne de données (B3:AU3).
Je voudrais copier cette ligne de données dans le fichier BDD, onglet "BDD_BRUT". Dans cet onglet ma zone de recherche est la colonne C.
Quand dans la colonne C je trouve la date égale à la date présente dans le fichier SYNTHESE en A1 je copie ma ligne en D (du coup ca se copie de D à AW). (edit: quand je dis je copie, c'est à dire que j'ai ma macro sur un bouton et que je clique dessus).
C'est tout ce que je veux faire mais je ne suis pas capable de le transcrire en VBA.
Logiquement je vois à peut près ce qu'il faudrait faire :
une fonction copier - je sais faire
une fonctione ouverture fichier,onglet
une fonction de recherche de ligne avec condition
une fonction copier - je sais faire
Je sais qu'il existe une solution pour créer directement une ligne en dessous de la dernière existante mais je veux juste être sur que les données ne s'écrase pas puisque les valeurs dans la colonne C sont unique.
A vous de me dire ce qui est le mieux en terme de rapidité de calcul surtout. Auquel cas je devrais modifier le format de ma ligne à copier mais cela je pense pouvoir le faire.
Merci par avance.
Partager