Récuperation de donnée depuis une autre feuille

Bonjour, je souhaiterais récupérer des données du tableau: suivi des réception.xls feuille "graines"

Pour les envoyer sur le tableau haricot mungo feuille réception, mon code ne comporte aucune erreur, mais cela ne fonctionne pas? Auriez-vous des conseils à me donner ?

Sub CopierElementsSansOuvrir()
Dim cheminClasseurSource As String
Dim classeurSource As Workbook
Dim feuilleSource As Worksheet
Dim feuilleDestination As Worksheet
Dim derniereligneSource As Long, derniereLigneDestination As Long, i As Long

' Spécifiez le chemin d'accès complet au classeur source
cheminClasseurSource = "O:\QUALITE\Suivi des réceptions.xlsm"

' Ouverture du classeur source en mode lecture seule
On Error Resume Next
Set classeurSource = Workbooks.Open(cheminClasseurSource, ReadOnly:=True)
On Error GoTo 0

If classeurSource Is Nothing Then
MsgBox "Erreur : Impossible d'ouvrir le classeur source."
Exit Sub
End If

' Spécifiez le nom de la feuille source
On Error Resume Next
Set feuilleSource = classeurSource.Worksheets("Suivi_des_réceptions")
On Error GoTo 0

If feuilleSource Is Nothing Then
MsgBox "Erreur : Impossible de trouver la feuille source dans le classeur source."
classeurSource.Close SaveChanges:=False
Exit Sub
End If

' Spécifiez le nom de la feuille de destination dans le classeur en cours
Set feuilleDestination = ThisWorkbook.Sheets("Réception")

' Trouver la dernière ligne avec des données dans la feuille source (colonne C)
derniereligneSource = feuilleSource.Cells(feuilleSource.Rows.Count, "C").End(xlUp).Row

' Trouver la dernière ligne avec des données dans la feuille de destination (colonne D)
If Application.WorksheetFunction.CountA(feuilleDestination.Range("D:D")) > 0 Then
derniereLigneDestination = feuilleDestination.Cells(feuilleDestination.Rows.Count, "D").End(xlUp).Row
Else
derniereLigneDestination = 1
End If

' Boucle à travers les lignes de la feuille source
For i = 1 To derniereligneSource
' Vérifier si la colonne C contient "haricot mungo"
If feuilleSource.Cells(i, 3).Value = "haricot mungo" Then
' Copier les éléments dans le tableau de destination (à ajuster selon votre structure)
feuilleDestination.Cells(derniereLigneDestination + 1, 4).Value = feuilleSource.Cells(i, 3).Value ' Colonne C vers Colonne D
feuilleDestination.Cells(derniereLigneDestination + 1, 5).Value = feuilleSource.Cells(i, 8).Value ' Colonne H vers Colonne E
feuilleDestination.Cells(derniereLigneDestination + 1, 6).Value = feuilleSource.Cells(i, 11).Value ' Colonne K vers Colonne F
feuilleDestination.Cells(derniereLigneDestination + 1, 7).Value = feuilleSource.Cells(i, 12).Value ' Colonne L vers Colonne G
feuilleDestination.Cells(derniereLigneDestination + 1, 8).Value = feuilleSource.Cells(i, 13).Value ' Colonne M vers Colonne H
feuilleDestination.Cells(derniereLigneDestination + 1, 9).Value = feuilleSource.Cells(i, 16).Value ' Colonne P vers Colonne I

' Mettre à jour la variable de la dernière ligne dans la feuille de destination
derniereLigneDestination = derniereLigneDestination + 1
End If
Next i

' Fermer le classeur source après utilisation
classeurSource.Close SaveChanges:=False
End Sub

le plus souvent le mieux c'est d'envoyer le fichier, ça facilite la compréhension du problème, et s'il y a des données sensibles, pense a les modifier avant d'envoyer le fichier

Rechercher des sujets similaires à "recuperation donnee feuille"