Vlookup et '1004'

caro -  
m@rina Messages postés 26524 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je suis débutant sur vba, et je bloque depuis des jours sur un bout de code faisant appel à la fonction Vlookup.
J'ai 3 bases de données correspondant à chacune un onglet. Les 3 bases renseignent sur les même produits ISIN.
Je souhaite récupérer les caractéristiques d'un ISIN sur les 3 bases. Mais le Vlookup ne marche pas pr le dernier onglet... Ci -dessous le bout de code. Si qqn avait une idée ça m'aiderait bcp. Merci par avance. Caroline

Sub Taux

Dim TAUX_TEST As Long
Dim TAUX_PRD As Long
Dim TAUX_BBG As Long
Dim TAUX_BBG_PCT As Long
Dim ISIN As String

Lettre = InputBox("lettre de la colonne")
j = Range(Lettre & "1").Column

For i = 2 To Worksheets("Synthese").Cells(2, 1).End(xlDown).Row

ISIN = Worksheets("Synthese").Cells(i, 1).Value


With Sheets("CALYPSO PRD").Activate
TAUX_PRD = WorksheetFunction.VLookup(ISIN, Worksheets("CALYPSO PRD").Range(Cells(1, 1), Cells(Cells(1, 1).End(xlDown).Row, Cells(1, 1).End(xlToRight).Column)), j, False)
End With
Worksheets("BBG").Cells(i, 38).Value = TAUX_PRD


With Sheets("CALYPSO TEST").Activate
TAUX_TEST = WorksheetFunction.VLookup(ISIN, Worksheets("CALYPSO TEST").Range(Cells(1, 1), Cells(Cells(1, 1).End(xlDown).Row, Cells(1, 1).End(xlToRight).Column)), j, False)
End With
Worksheets("BBG").Cells(i, 39).Value = TAUX_TEST

With Sheets("BBG").Activate
TAUX_BBG = WorksheetFunction.VLookup(ISIN, Worksheets("BBG").Range(Cells(1, 1), Cells(Cells(1, 1).End(xlDown).Row, Cells(1, 1).End(xlToRight).Column)), j, False)
TAUX_BBG_PCT = TAUX_BBG / 100
End With
Worksheets("BBG").Cells(i, 40).Value = TAUX_BBG_PCT

Next i

End Sub

1 réponse

m@rina Messages postés 26524 Date d'inscription   Statut Contributeur Dernière intervention   11 490
 
Bonjour,

Il faudrait voir ton classeur...

Déjà, je ne comprends pas tes With et End With qui ne servent à rien...

De plus, je pense qu'il y a sûrement mieux à faire que d'utiliser une WorkSheetFunction.

m@rina
0