stephane.quinquis
XLDnaute Junior
Bonjour,
Je vous sollicite pour une nouvelle macro. Je dispose de deux classeurs:"inventaire production exemple" et "inventaire pasteurisation exemple".
Je souhaite filtrer des informations d'un tableau situé sur la feuil1 du classeur "inventaire production exemple". Puis ces informations que je viens de filtrer doivent être copiées puis collées dans un autre claseur"inventaire pasteurisation.
A l'aide de l'enregistreur de macro, j'ai obtenu le résultat suivant:
La démarche de la macro est la suivante:
Mon problème se situe au niveau du copier coller car je ne sais pas comment uniquement sélectionner les données qui viennent d'être filtrées et non pas une plage de données fixes. Idem pour le copier coller dans la même feuille.
Merci d'avance
Je vous sollicite pour une nouvelle macro. Je dispose de deux classeurs:"inventaire production exemple" et "inventaire pasteurisation exemple".
Je souhaite filtrer des informations d'un tableau situé sur la feuil1 du classeur "inventaire production exemple". Puis ces informations que je viens de filtrer doivent être copiées puis collées dans un autre claseur"inventaire pasteurisation.
A l'aide de l'enregistreur de macro, j'ai obtenu le résultat suivant:
Code:
Sub testfiltre()
'
' testfiltre Macro
' Macro enregistrée le 20/04/2010 par quinquis
'
'
Windows("inventaire pasteurisation exemple.xls").Activate
Rows("7:7").Select
Selection.Insert Shift:=xlDown
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
Selection.Interior.ColorIndex = 2
Selection.Font.ColorIndex = 0
Windows("inventaire production exemple.xls").Activate
Selection.AutoFilter Field:=4, Criteria1:="<>"
ActiveWindow.SmallScroll ToRight:=5
Selection.AutoFilter Field:=6, Criteria1:="="
ActiveWindow.SmallScroll ToRight:=-4
[B]Range("A7:F9").Select[/B]
Selection.Copy
Application.CutCopyMode = False
Windows("inventaire pasteurisation exemple.xls").Activate
Range("A8").Select
ActiveSheet.Paste
Windows("inventaire production exemple.xls").Activate
[B] Range("D8:D9").Select[/B]
Application.CutCopyMode = False
Selection.Copy
ActiveWindow.SmallScroll ToRight:=5
Range("N8").Select
ActiveSheet.Paste
ActiveWindow.SmallScroll ToRight:=-4
Selection.AutoFilter Field:=4
ActiveWindow.SmallScroll ToRight:=6
Selection.AutoFilter Field:=14
ActiveWindow.ScrollColumn = 1
ActiveWindow.SmallScroll ToRight:=0
ActiveWindow.SmallScroll Down:=-6
End Sub
La démarche de la macro est la suivante:
- Insertion d'une ligne dans "inventaire pasteurisation"
- Revenir au "classeur inventaire production"
- Filtre automatique sur le paramètre poids(sélectionne uniquement les cellules non vides)
- Filtre automatique sur le paramètre envoi vers pasteurisation(sélectionne uniquement les cellules vides)
- Copier la plage de données filtrée et la coller à l'endroit où la ligne a été inséré
- Revenir au classeur"inventaire production"
- Faire un copier coller entre la colonne poids et la colonne envoi vers pasteurisation(cela permettra de ne pas avoir de données deux fois recopiées lors de la prochaine utilisation de la macro)
- Enfin déselectionner les filtres sur le paramètre poids et le paramètre envoi vers pasteurisation
Mon problème se situe au niveau du copier coller car je ne sais pas comment uniquement sélectionner les données qui viennent d'être filtrées et non pas une plage de données fixes. Idem pour le copier coller dans la même feuille.
Merci d'avance
Pièces jointes
-
inventaire production exemple.xls31 KB · Affichages: 92
-
inventaire pasteurisation exemple.xls26 KB · Affichages: 104
-
inventaire production exemple.xls31 KB · Affichages: 82
-
inventaire pasteurisation exemple.xls26 KB · Affichages: 103
-
inventaire production exemple.xls31 KB · Affichages: 81
-
inventaire pasteurisation exemple.xls26 KB · Affichages: 103