Recopier des valeurs d'une feuille à une autre
Résolu
Miss_tik76
Messages postés
27
Statut
Membre
-
Miss_tik76 Messages postés 27 Statut Membre -
Miss_tik76 Messages postés 27 Statut Membre -
Bonjour à tous,
Je vous joints un fichier pour mieux visualiser mon problème :
https://www.cjoint.com/?DAwnUTP8Slo
Je souhaite recopier les valeurs "quantités" de ma feuille DATA vers la Feuil1 en fonction des valeurs séléctionner dans Feuil1 :
- usine
- véhicule
- date
Si je n'ai pas été claire, je peux réexpliquer...
Merci par avance à tous !
Miss_tik76
Je vous joints un fichier pour mieux visualiser mon problème :
https://www.cjoint.com/?DAwnUTP8Slo
Je souhaite recopier les valeurs "quantités" de ma feuille DATA vers la Feuil1 en fonction des valeurs séléctionner dans Feuil1 :
- usine
- véhicule
- date
Si je n'ai pas été claire, je peux réexpliquer...
Merci par avance à tous !
Miss_tik76
4 réponses
-
Bonjour,
1° Message annulé
Je regarde
Michel -
Bonjour,
J'ai avancé sur mon projet et trouvé ce code :
With Worksheets("DATA")
DerLig = .Columns("A").Find("*", , , , , xlPrevious).Row
Set Col_C = .Range("C2:C" & DerLig)
Set Plage1 = Sheets("Feuil1").Range("D11:D20")
For Each d In Plage1
For Each e In Col_C
donnee = d.Value
If e.Value = donnee Then
If e.Offset(0, -1).Value = ComboBox1.Value Then
donnee1 = e.Offset(0, 1).Value
col = Sheets("Feuil1").Rows("10").Find(donnee1, , , , , xlNext).Column
lig = d.Row
e.Offset(0, 3).Copy
Sheets("Feuil1").Cells(lig, col).Select
Selection.PasteSpecial Paste:=xlPasteValues
End If
End If
Next e
Next d
End With
Mais j'ai un soucis avec ma fonction find qui ne me retourne pas la date exacte... -
Mon nouveau problème est que s'il ne trouve pas la date il beug. Comment faire pour que s'il ne trouve pas la date il passe à la suivante ?
-
Cette fois ce code fonctionne sur mon exemple, plus qu'à la mettre à l'épreuve en condition réel ;)
Dim DerLig As Integer
Dim Plage1 As Range
Dim Lig1 As Integer
Dim Col_C As Range
Dim col As Integer
Dim d As Range
Dim e As Range
With Worksheets("DATA")
DerLig = .Columns("A").Find("*", , , , , xlPrevious).Row
Set Col_C = .Range("C2:C" & DerLig)
Set Plage1 = Sheets("Feuil1").Range("D11:D20")
For Each d In Plage1
For Each e In Col_C
If e.Value = d.Value Then
If e.Offset(0, -1).Value = ComboBox1.Value Then
donnee1 = e.Offset(0, 1).Value
'Pour diminuer le temps de recherche
Nb_Tr = Application.CountIf(Sheets("Feuil1").Rows("10"), donnee1)
If Nb_Tr > 0 Then
col = Sheets("Feuil1").Rows("10").Find(donnee1, , , xlWhole, , xlNext).Column
lig = d.Row
e.Offset(0, 3).Copy
Sheets("Feuil1").Cells(lig, col).Select
Selection.PasteSpecial Paste:=xlPasteValues
End If
End If
End If
Next e
Next d
End With