Comparer (classeur different) et copie/coller Excel VBA

Fermé
ana87 - Modifié par ana87 le 25/11/2015 à 14:55
f894009 Messages postés 17268 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 29 mars 2025 - 1 déc. 2015 à 10:56
Bonjour,
je reçois chaque jour des fichiers excel et je dois à chaque fois comparer les données
( A8; sheet1) des fichiers reçu (.csv) avec le fichier excel locale (final.xls) ( A2; sheet1), afin de remplir la cellule vide (F2, sheet1) du fichier (final.xls), avec les données de la cellule des fichier (.csv) (B9; sheet1).

j'ai vraiment besoin de trouver une méthode rapide pour faire le travail, j'ai pensée à élaborer une application .vba sous excel, mais j'ai jamais utiliser la prog vba sous excel j'utilise toujours java ou autre.

Alors si vous voulez bien m'aider a trouver une solution de choisir le répertoire et faire tous ses actions.

Je vous remercie d'avance.
A voir également:

3 réponses

f894009 Messages postés 17268 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 29 mars 2025 1 713
25 nov. 2015 à 15:01
Bonjour,

selection repertoire:

Sub test()
    Dim Rep As FileDialog
    
    Set Rep = Application.FileDialog(msoFileDialogFolderPicker)
    Rep.Show
    If Rep.SelectedItems.Count > 0 Then
        MsgBox Rep.SelectedItems(1)
    Else
    MsgBox "Aucun Repertoire Selectionne"
    End If
End Sub


Donc vous recevez des fichiers CSV, dont ils faut extraire une donnee (B9; sheet1) en fonction d'une comparaison ( A8; sheet1) fichier CSV et ( A2; sheet1)(final.xls) et si cette comparaison est ok (quelle comparaison ?????) alors, ecrire cette donnee (B9; sheet1) CSV dans (F2, sheet1)(final.xls)

Questions:
Y a-t-il un ordre d'ouverture des fichiers CSV ??
Faut-il ecrire toujours dans la meme cellule (votre demande le laisse a penser)
ou comment doit se fait l'ecriture de ces donnees
0
merci pour le code de la "sélection répertoire".
et pour tes questions, alors:
- je compare les références des fichier .csv avec final.xls.
- et NON pas d'ordre d'ouverture, je reçois des fichiers .rar que je décompresse et mets dans le même fichier que (final.xls).
-oui j'écris toujours dans la même cellule (final.xls); (F2, sheet1), je fais une mise à jour des réf dans (final.xls);( A2; sheet1).
- pour l'écriture des données : si c'est le type des (B9)(.csv) c'est des float (des analyses).

j'espère que j'ai répondu à tes questions.
0
f894009 Messages postés 17268 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 29 mars 2025 1 713 > ana87
25 nov. 2015 à 18:08
Re,

oui j'écris toujours dans la même cellule pige pas trop, z'etes sur que c'est cellule F2 et pas colonne F car ecrire toujours dans une seule cellule ca n'a pas de sens
0
ana87- > f894009 Messages postés 17268 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 29 mars 2025
26 nov. 2015 à 10:17
ah oui je me suis mal exprimée, c'est plutôt la colonne F.
0
f894009 Messages postés 17268 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 29 mars 2025 1 713 > ana87-
26 nov. 2015 à 10:29
Bonjour,

Recapitulation:

Vous cherchez dans chaque fichier CSV une reference en A8 que vous comparez a une liste de references colonne A de final.xls et si elle est trouvee alors ecrire le contenu de B9(.csv) dans la cellule colonne F de final.xls meme ligne que la reference trouvee

Est-ce exacte ???
0
ana87 > f894009 Messages postés 17268 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 29 mars 2025
26 nov. 2015 à 12:59
exact
0
f894009 Messages postés 17268 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 29 mars 2025 1 713
26 nov. 2015 à 14:04
Re,

dossier compresse avec fichiers csv et fichier xls, a vous de voir comment empiler le code (avec des adaptations) dans votre fichier final.xls

https://www.cjoint.com/c/EKAnek6DoTf
0
j'apprécie vraiment votre aide
0
f894009 Messages postés 17268 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 29 mars 2025 1 713 > ana87
26 nov. 2015 à 16:35
Re,
Content de vous "servir", ca marche au moins ???
0
ana87 > f894009 Messages postés 17268 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 29 mars 2025
30 nov. 2015 à 12:03
bonjour,
alors j'ai modifiée le code afin de l'utiliser sur mon fichier excel, l'action coller ne marche pas.
lorsque j’exécute le code il m’affiche les ref qui n'existe pas (vraiment cool), ensuite je clique terminer et rien:
.Range("F" & lig) = ValB9 'ecriture de B9(.csv) ... ne copie rien.
est ce que il existe un autre code qui effectue l'action copier/coller.
je vous remercie vraiment.
0
ana87 > f894009 Messages postés 17268 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 29 mars 2025
30 nov. 2015 à 12:39
re bonjour, alors lorsque j'ai mentionnée B9 et A9 = à partir de B9 et A9.
alors (A9:A2000) et (B9:B2000)
Ref = .Range("A9")
ValB9 = .Range("B9")
impossible de faire l'implantation de toute une colonne dans la var valb9.
ça veux dire que c'est impossible de faire la comparaison entre les deux vars (ref/valb9).
j'ai remplacer .Range("A9:A2000"), mais sérieusement je ne sais pas quoi faire...

je sais que c'est ma faute j'ai mal expliquée, vraiment désolée, je viens de me rendre compte lorsque j'ai ajouter debug.print afin d'afficher les valeurs importer dans Valb9, il m'affiche les valeurs (B9) de chaque fichier .csv.
0
f894009 Messages postés 17268 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 29 mars 2025 1 713 > ana87
30 nov. 2015 à 17:18
Bonjour,

Pas de panique, je regarde la chose
0
f894009 Messages postés 17268 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 29 mars 2025 1 713
30 nov. 2015 à 18:02
Re,

Fichier Recap code modifie pour recup et traitement des colonnes Fichiers CSV

https://www.cjoint.com/c/EKErcluJGof

A+
0
ça marcheeeeeeeeeeeeee merci beaucoup
0
f894009 Messages postés 17268 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 29 mars 2025 1 713 > ana87
1 déc. 2015 à 10:56
Bonjour,

Bonne suite
0