Macro Excel - Rechercher - Lire et Ecrire dans 2 fichiers différents

Bonjour,

J'aimerais créer une macro sur Excel pour automatiser quelques tâches. Le problème est que je connais pas très bien le VBA et je galère un peu.

Pour expliquer :

- J'ai deux fichiers : 1 avec des informations fixes (fichier source) et 1 avec des informations à modifier (fichier de destination).

- Je génère les fichiers de destination régulièrement et je dois les modifier.

- Il faudrait que je supprime des colonnes dans mon fichier de destination (infos inutiles) puis que je crée une nouvelle colonne pour y ajouter des informations que j'irais reprendre dans le fichier source. En gros, j'ai des appareils de mesure avec des numéros de série (dans mon fichier de destination) et ces numéros de série correspondent à des noms (fixes dans le fichier source). Je dois donc faire une comparaison et écrire pour le numéro de série A, le nom 1, pour le numéro de série B, le nom 2 etc ...

Je ne sais pas si je suis bien clair. Je suis dispo pour plus de clarté ! :)

Merci à qui pourra me filer un coup de main.

@+

Bonsoir,

Au cas où quelqu'un passe par là, je vais pouvoir simplifier mon code.
A savoir :

- Je vais devoir lire dans un fichier Excel (mon fichier de destination).
- Je vais rechercher dans la colonne A mes valeurs.
- Si je trouve 1 dans ma colonne A, par exemple en A3 j'écris A en C3 (deux colonnes plus loin).
- Si je trouve 2 dans ma colonne A, par exemple en A9, j'écris B en C9 (deux colonnes plus loin).
Etc ....
- Ensuite je supprime mes colonnes inutiles (Par exemple les colonnes B, D, E et F)
- Je sauvegarde mon fichier de destination sous un nouveau nom.

Merci à celui qui me mettra le pied à l'étrier :)

Bonjour,

Voici un premier essai où on cherche les valeurs de la colonne A du fichier destination dans la plage source. A chaque correspondance, on copie la valeur qui se trouve juste à droite de la plage source dans la colonne C de destination.

Il faudra adapter toutes les références :

Sub test()
application.screenupdating = false
set wf = worksheetfunction
set r = sheets("source").range("refplagesource") '<<< ADAPTER NOM FEUILLE ET REF PLAGE
with workbooks.open("chemincompletdestination").sheets("dest") '<<< CHEMIN CLASSEUR DEST ET NOM FEUILLE DEST
    dl = .cells(.rows.count, 1).end(xlup).row 'dernière ligne
    for i = 1 to dl 'pour chaque ligne de destination
        if wf.countif(r, .cells(i, 1).value) > 0 then 'si cellule en cours (col 1) trouvée dans source
            .cells(i, 3).value = wf.index(r.offset(, 1), wf.match(.cells(i, 1).value, r, 0)) 'en col 3 dest, recherchev
        end if
    next i
    .range("B:B, D:F").delete 'suppression colonnes
    with .parent
        .savecopyas "nouveaunom" 'nouvelle copie nouveau
        '.saveas "nouveaunom" 'enregistrement sous nouveau nom (éventuellement après essais)
        '.close true 'ferme et sauve
    end with
end with
application.screenupdating = true
end sub

Le classeur de destination doit être fermé avant le lancement de la macro !

Cdlt,

Salut et merci pour la réponse !

Je vais tester tout ça et essayer d'adapter à mes données et je reviens vers toi pour te dire si ça marche.

Bon dimanche

Salut 3GB,

Du coup, merci beaucoup pour ton exemple. J'ai pu m'en servir pour faire ce que je voulais !

Bonne journée.

Salut Ric !

Génial, et merci pour ce retour !

Bonne journée à toi aussi,

Rechercher des sujets similaires à "macro rechercher lire ecrire fichiers differents"