RechercheV dans un autre classeur

Bonjour Chers tous
Je voudrais une macro qui me permettra depuis mon classeur2 de récupérer les données des feuilles de mon classeur1 a partir des codes.
Merci et excellente Journée.

9classeur2.xlsm (22.71 Ko)
9classeur1.xlsm (22.68 Ko)

Une seule contrainte (sinon, il faudra modifier le code en conséquence), il faut que les deux classeurs soient dans le même dossier.

Essayez ceci (le bouton de la macro se trouve dans la feuille de synthèse du classeur 2). Il est possible d'automatiser la chose à l'ouverture du classeur 2 en déplaçant le code dans WorkBook.open():

3classeur1.xlsm (19.36 Ko)
4classeur2.xlsm (31.74 Ko)
Sub Importation()
    Dim wS1 As Worksheet, wS2 As Worksheet
    Dim wB As Workbook, source As Workbook
    Dim i As Integer, j As Long, compt As Long
    Dim table() As String, distrib As String
    Dim valeur1 As Integer, valeur2 As Integer

    On Error GoTo GESTERREUR
    Application.ScreenUpdating = False

    Set wB = ThisWorkbook
    distrib = "1,2,2,-3,1,1,1,1,1,-7,0"
    table = Split(distrib, ",")

    ' Ouverture du classeur source en lecture seulement (2e True)
    Set source = Workbooks.Open(wB.Path & "\Classeur1.xlsm", True, True)

    ' Récupération des données
    For i = 1 To 5
        Set wS2 = wB.Sheets(i)
        Set wS1 = source.Sheets(i)
        compt = -1
        For j = 5 To 15
            compt = compt + 1
            valeur1 = wS1.Cells(j, 3)
            valeur2 = wS1.Cells(j + table(compt), 5)
            wS2.Cells(j, 3) = valeur1
            wS2.Cells(j, 5) = valeur2
        Next j
    Next i

    ' Fermeture du classeur 1
    source.Close False  ' FALSE = fermeture sans modif
    Set source = Nothing

GESTERREUR:
    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub

Infiniment merci !!

Mais je voudrais une explication sur la ligne : distrib = "1,2,2,-3,1,1,1,1,1,-7,0"

C'est un truc de fainéant pour éviter de se perdre dans des boucles de recherche sans fin.

La cellule A1 du Classeur 1 se trouve 3 lignes avant la cellule A1 du Classeur 2. La cellule A50 se trouve sur la même ligne, etc.

grille

Ok merci !!

Rechercher des sujets similaires à "recherchev classeur"