[RESOLU] - VLOOKUP sur une autre feuille

Akortys

XLDnaute Occasionnel
bonjour,

J'ai un fichier avec une macro qui me permet de copier les données d'un tableau dans un autre tableau et de faire au passage un petit calcul sur les notes.

Quand les 2 tableaux sont sur la même feuille ça fonctionne bien, mais je souhaite faire évoluer mon classeur pour aller copier les données sur une autre feuille.

Souhait :
Données de départ sur la feuille "DonneesBrut"
Données d'arrivée sur la feuille "Synthese"

Macro utilisée "test"

Si vous avez une petite piste, merci d'avance
 

Pièces jointes

  • 00 - Akortys - Notes réelles reporter V3-dev.xlsm
    26.6 KB · Affichages: 75
Dernière édition:

JMR150

XLDnaute Nouveau
Re : VLOOKUP sur une autre feuille

Salut,

Tu devrais essayer d'enregistrer une macro pour voir ce que ça donne.
Déjà c'est normal que tu n'arrives pas à passer à une autre feuille car tu ne l'actives pas dans ta macro. Il copie alors les données par défaut dans ta feuille active.

Tu pourrais déjà essayer de rajouter un Sheets("Synthese").Select avant ton with
 

Akortys

XLDnaute Occasionnel
Re : VLOOKUP sur une autre feuille

bonjour,

Merci pour la réponse.
J'y suis arrivé en faisant :
Dim iDABIL As Long
With Application: .ScreenUpdating = False: .Calculation = xlManual: .EnableEvents = False: End With
For iDABIL = Cells(Rows.Count, "A").End(xlUp).Row To 2 Step -1
With Range("A" & iDABIL)
Sheets("Synthese").Select
Range("A1").Select
.Offset(, 0).FormulaR1C1 = "=TriBrutDA!RC[1]"
'Lire cellule d'arrivée de la feuille choisie = RECHERCHE (feuille de depart!N°de col d'arrivée + diff de N° de col depart, plage de correspondance, .....)
.Offset(, 1).FormulaR1C1 = "=VLOOKUP(DonneesBrut!RC[4],fab!R3C10:R7C11,2,0)"
.Offset(, 2).FormulaR1C1 = "=VLOOKUP(DonneesBrut!RC[4],fab!R3C10:R7C11,2,0)"
.Offset(, 3).FormulaR1C1 = "=VLOOKUP(DonneesBrut!RC[4],fab!R3C10:R7C11,2,0)"
.Offset(, 4).FormulaR1C1 = "=VLOOKUP(DonneesBrut!RC[4],fab!R3C10:R7C11,2,0)"
.Offset(, 5).FormulaR1C1 = "=VLOOKUP(DonneesBrut!RC[4],fab!R3C10:R7C11,2,0)"
.Offset(, 6).FormulaR1C1 = "=VLOOKUP(DonneesBrut!RC[4],fab!R3C10:R7C11,2,0)"
.Offset(, 7).FormulaR1C1 = "=VLOOKUP(DonneesBrut!RC[4],fab!R3C10:R7C11,2,0)"
.Offset(, 8).FormulaR1C1 = "=VLOOKUP(DonneesBrut!RC[4],fab!R3C10:R7C11,2,0)"
End With
Next iDABIL
With Application: .EnableEvents = True: .Calculation = xlAutomatic: .ScreenUpdating = True: End With

Ce que je n'avais pas compris c'est l'activation de la feuille Synthese et le fait que dans mon VLOOKUP le RC[4] n'etait pas le numero de la colonne voulue mais le chiffre a ajouté par rapport à la colonne d'arrivée.
Offset de 5 j'ajoute 4 pour avoir la colonne N°9.

Je ne sais pas si c'est propre mais ca fonctionne.
S'il y a possibilité de faire plus propre je suis preneur.

Merci d'avance
 
Dernière édition:

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 165
Messages
2 085 880
Membres
103 009
dernier inscrit
dede972