Transfert de données entre 2 classeurs excel

EricTheKing7 Messages postés 4 Statut Membre -  
EricTheKing7 Messages postés 4 Statut Membre -
Bonjour!

Je galère depuis 2 jrs sur un fichier excel!!! :fou:

En fait, j'ai un fichier ac 2 classeurs. Sur le premier classeur, j'ai la région, le nom, le prénom et le numéro du sociétaire als que sur le second je n'ai que le numéro du sociétaire...
Donc voilà, l'idéal serait de créer une macro qui pointe les numéros sociétaires sur les deux classeurs, et que lorsque deux numéros sont identiques, les données du fichier complet (région, nom, prenom) se transfère dans l'autre classeur..
Sachant qu'il y a plus de 11000 numéros sociétaires, jpeu laisser tomber le bon vieux copier-coller...

Je bataille, je bataille mais rien y fait!! :pt1cable:

Voilà, en espérant avoir été assez clair...Merci d'avance!
A voir également:

5 réponses

Dctc33
 
Bonjour,
Je suppose qu'il faut rechercher et récupérer les données par rapport au numéro commun
1- Connaitre le nom des classeurs pour pouvoir les appeler
Pour appeler un classeur
Windows(Nom_Classeur).Activate
Quand on a activé le classeur
sélectionner la page souhaitée Ex page 1
Sheets(1).select

Prenons comme exemple que le premier Numéro est ligne 5 colonne 1

déclarer une variable
Dim MaValeur as integer

MaValeur = 5

While Sheets(1).Cells(MaVleur,1) <> ""

If Sheets(1).Cells(MaVleur,1) = LeNumero recherché Then

' Récupérer les donner

Toto = Sheets(1).Cells(MaVleur,2)
label1.caption = Sheets(1).Cells(MaVleur,3)

Endif

MaValeur = MaValeur + 1
Wend

' Sélectionner le deuxième classeur

Windows(Nom_Classeur2).Activate

et refaire le même type de boucle

Si l'ordre est identique sur les deux classeurs on peut gagner du temps en récupérant le numéro de ligne

L'utilisation du while a l'avantage que nous n'avons pas à connaitre le nombre de lignes par contre il ne faut pas sauter de ligne étant donné que l'on recherche la cellule vide

le passage d'un classeur à l'autre ou d'une page à l'autre est visible pendant le déroulement de la macro ce n'est pas très beau
Pour ne pas le voir débuter sa SUB par

Application.ScreenUpdating = False

avant le End Sub
Application.ScreenUpdating = true

quand on démarre une macro il possible de récupérer le nom du classeur en cours

Nom_Classeur = ActiveWorkbook.Name

En espérant vous avoir donné quelques infos sur le sujet

Bonne programmation
1
EricTheKing7 Messages postés 4 Statut Membre
 
Merci bcp les gars c sympa, j'ai enfin réussi a résoudre mon problème!! Bonne continuation!
0
Gord21 Messages postés 928 Statut Membre 289
 
Bonjour,
Je pense que tu peux t'en sortir sans macro avec la fonction RECHERCHEH ou RECHERCHEV.
0
EricTheKing7 Messages postés 4 Statut Membre
 
Ben justement j'essaye avec cette méthode mais ça ne marche tjs pas...
0
EricTheKing7 Messages postés 4 Statut Membre
 
Enfin avec les formules je trouve ce que je cherche mais le résultat ne s'affiche pas correctement! J'ai beau aller modifier le format des cellules rien ne change als que j'utilise la bonne formule...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Gord21 Messages postés 928 Statut Membre 289
 
Est-ce que tu pourrais envoyer un exemple de ton fichier ? Ce serait plus facile de proposer des solutions.
0