lacamioneta
XLDnaute Nouveau
Bonjour,
Une fois n'est pas coutume, je sèche à trouver une solution à ma problématique,
j'ai bien un code qui fonctionne, mais ne fait pas tout ce que je voudrais qu'il fasse
Je m'explique:
Il y a 2 fichiers: un fichier "source" qui vient d'un extract hebdomadaire et un fichier "stock" sur lequel je je veux récupérer unique des lignes du fichier "source" qui m’intéresse.
Les lignes qui m'intéressent sont celles qui ont le même n° d'article défini dans le fichier "stock" feuille " stock".
Le problème dans mon code, est que je n'arrive pas à choisir toute la liste d'article que je veux en critère
Je fais appel à votre bon cœur, pour m'aider à résoudre ce problème
merci
Une fois n'est pas coutume, je sèche à trouver une solution à ma problématique,
j'ai bien un code qui fonctionne, mais ne fait pas tout ce que je voudrais qu'il fasse
Je m'explique:
Il y a 2 fichiers: un fichier "source" qui vient d'un extract hebdomadaire et un fichier "stock" sur lequel je je veux récupérer unique des lignes du fichier "source" qui m’intéresse.
Les lignes qui m'intéressent sont celles qui ont le même n° d'article défini dans le fichier "stock" feuille " stock".
Le problème dans mon code, est que je n'arrive pas à choisir toute la liste d'article que je veux en critère
Je fais appel à votre bon cœur, pour m'aider à résoudre ce problème
merci
VB:
Sub Copysource()
Dim source As Workbook, stock_test1 As Workbook
Dim Rw As Range
Dim lgn As Long
Dim i As Long
'ouvrir le classeur source (en lecture seule)
Chemin = ThisWorkbook.Path
'définir le classeur destination
Set stock_test1 = ThisWorkbook
Set source = Application.Workbooks.Open("C:\********\source.xlsx")
For Each Rw In Workbooks("source.xlsx").Sheets("Feuil1").Range("A2:A200000")
If Rw.Value = Workbooks("stock_test1.xlsm").Sheets("stock").Range("A4") Then
Rw.EntireRow.Copy Destination:=Workbooks("stock_test1.xlsm").Sheets("extract").Range("A1")
lgn = ligne + 1
End If
Next Rw
'fermer le classeur source
source.Close False
If MsgBox("Copie Finie", vbYes, "Mise à jour stock") = vbYes Then
End If