Bonjour à tous,
Je me permets de vous solliciter car je suis bloqué avec un code VBA ce qui me cause beaucoup d'arrachements de cheveux !
Je souhaite copier des lignes d'une base de données vers une autre.
La première base est filtrée en fonction de codes comptables, et j'aimerai créer un autre filtre permettant de sélectionner les lignes apparues entre une date (affichée dans une cellule sur le document devant recevoir ces nouvelles lignes) et aujourd'hui.
Est-ce possible ?
Par ailleurs, je ne parviens pas à faire de sorte que les lignes soit copiées automatiquement sur la première ligne vide de la base (à la suite de toutes les autres). Si quelqu'un a des idées je suis preneur !
Voici le code que j'ai créé pour le moment :
Mille mercis d'avance pour votre aide,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Sub copierversbase() Windows("EDI_EXTRACT_CDG_DIVERSIFICATION.xls").Activate ActiveSheet.Range("$A$1:$AB$2704").AutoFilter Field:=22, Criteria1:= _ xlFilterYesterday, Operator:=xlFilterDynamic ActiveSheet.Range("$A$1:$AB$2704").AutoFilter Field:=14, Criteria1:= _ "=PJECST6", Operator:=xlOr, Criteria2:="=PJEINTP" Sheets("EDI-EXTRACT-CDG-DIVERSIFICATION").Range("$A$2:$AB$2704").SpecialCells(xlVisible).Copy Windows("Base 2-macro.xlsm").Activate Sheets("Base").Select Dim LngLastRow As Long LngLastRow = Range("A1").SpecialCells(xlCellTypeLastCell).Row + 1 Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False End Sub
arochab
Partager