Copier un tableau dans un fichier dont le nom change

Bonjour,

Ma demande m'a l'air d'être pas compliquée, en tout cas à mes yeux de novice .

Je souhaiterai faire une macro qui me permet de copier un tableau (en active sheet) dans une autre feuille d'un autre tableau dont le nom se présente comme suit :

"20130502 TRES - REC_VD.xlsm"

Le soucis c'est que la date change quotidiennement et je souhaiterai insérer une variable qui va aller chercher mon fichier parmi tous mes classeurs ouverts...

En gros, quel code doit remplacer cette syntaxe ci-dessous :

Windows("20130502 TRES - REC_VD.xlsm").Activate

Merci de votre aide.

Bonjour,

Sub Nom_glet()

dd = Right(Date, 4)
cc = Mid(Date, 4, 2)
bb = Left(Date, 2)

aa = dd & cc & bb & " TRES - REC_VD.xlsm"
Windows(aa).Activate
End Sub

Bonjour Game Over,

Merci pour ta réponse.

Je n'arrive pas à insérer ton code, je ne sais pas s'il faut remplacer des choses, en tout cas il y a quelque chose que je fais mal.

Ci-dessous mon code, je voudrai insérer le tien juste après le "Copy" de la fin. Le nom de la feuille du fichier "yyyy/mm/dd TRES - REC_VD.xlsm" est "Payment form".

Sub Wire_file()
'
' Wire_file Macro
'

'
    ActiveWorkbook.ActiveSheet.Activate
    Rows("4:4").Select
    Selection.Delete Shift:=xlUp
    Cells.Select
    Cells.EntireColumn.AutoFit
    Rows("3:3").Select
    Selection.AutoFilter
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 5
    ActiveWindow.ScrollColumn = 6
    ActiveWindow.ScrollColumn = 7
    ActiveWindow.ScrollColumn = 8
    ActiveWindow.ScrollColumn = 9
    ActiveWindow.ScrollColumn = 10
    ActiveWindow.ScrollColumn = 11
    ActiveWindow.ScrollColumn = 12
    ActiveWindow.ScrollColumn = 13
    ActiveWindow.ScrollColumn = 14
    ActiveWindow.ScrollColumn = 15
    ActiveWindow.ScrollColumn = 16
    ActiveSheet.Range("$A$3:$U$198").AutoFilter field:=20, Criteria1:="--"
    Rows("4:4").EntireRow.AutoFit
    Rows("4:4").Select
    Range("P4").Activate
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Delete Shift:=xlUp
    Rows("3:3").Select
    Range("P3").Activate
    Selection.AutoFilter
    Selection.AutoFilter
    Dim NbLg As Long
    Application.ScreenUpdating = False
    With ActiveSheet
    If .FilterMode = True Then .ShowAllData
    End With
    NbLg = Range("T" & Rows.Count).End(xlUp).Row
    Range("A3:U" & NbLg).AutoFilter field:=20, Criteria1:=">=" & CSng(Application.WorkDay(Date, -4))
    ActiveWorkbook.ActiveSheet.AutoFilter.Sort.SortFields. _
        Clear
    ActiveWorkbook.ActiveSheet.AutoFilter.Sort.SortFields. _
        Add Key:=Range("A3"), SortOn:=xlSortOnValues, Order:=xlDescending, _
        DataOption:=xlSortNormal
    With ActiveWorkbook.ActiveSheet.AutoFilter.Sort
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    Selection.CurrentRegion.Select
    Selection.Copy

End Sub

Si tu as un moment, tu peux m'expliquer ton code stp ? Sinon y a pas de soucis, je comprendrai.

Bon début de semaine.

Merci

J'ai modifié le code, cela te permettra d'avoir une meilleure compréhension du script

aa = Year(Date) 'extrait l'année de la date d'aujourd'hui 
aa = Format(aa, "0000") 'formate l'année à 4 chiffres
bb = Month(Date) 'extrait le mois de la date d'aujourd'hui 
bb = Format(bb, "00") 'formate le mois à 2 chiffres
cc = Day(Date) 'extrait le jour de la date d'aujourd'hui 
cc = Format(cc, "00") 'formate le jour à 2 chiffres

dd = aa & bb & cc & " TRES - REC_VD.xlsm" 'crée le nom du classeur

Windows(dd).Activate 'active le classeur (celui-ci doit être déjà ouvert)
ActiveWorkbook.Sheets("Payment form").Select 'sélectionne la feuille Payment form

Le nom de la feuille du fichier "yyyy/mm/dd TRES - REC_VD.xlsm" est "Payment form".

Attention : yyyy/mm/dd est différent du format 20130502 que tu donnes dans ton premier message !

la macro génère un nom yyyymmdd et non yyyy/mm/dd

Oui oui, excuse moi pour le format de la date, je me suis trompé, le bon format était bel et bien celui que j'avais mis dans mon premier message.

Sinon ça marche c'est parfait, merci.

Bonne journée

Rechercher des sujets similaires à "copier tableau fichier nom change"