2017-05-26 134 views
0

我有12个文件夹(月),并且在每个月的文件夹中,每周都有一个文件夹。在每周的文件夹中都有一些excel文件。在每月文件夹名称(每周更改)中打开每月文件夹名称内的所有文件

在每周的基础上,我需要打开本周文件夹内的所有文件,以便数据填充间接匹配公式。希望通过点击按钮来做到这一点...

有没有办法引用指向相关月份和周的路径?例如。我更新了主文件中的一个单元格,它显示了月份和星期,VBA指向那里,并打开这些文件?我正在尝试将一些VBA修改为另一个主文件,我只保留在相同的文件夹位置。

Public Sub test() 
'DECLARE AND SET VARIABLES 
Dim wbk As Workbook 
Dim Filename As String 
Dim Path As String 
Path = "S:\Accounts\FP&A\1. Weekly Sales Figures\FY 18\" 
Filename = Dir(Path & "*.xlsm") 

'Optimize Macro Speed 
    Application.ScreenUpdating = False 
    Application.EnableEvents = False 
    Application.Calculation = xlCalculationManual 

'-------------------------------------------- 
'OPEN EXCEL FILES 
Do While Len(Filename) > 0 'IF NEXT FILE EXISTS THEN 
    Set wbk = Workbooks.Open(Path & Filename) 
    ' 
    ' CODE GOES HERE 
    ' 
    Filename = Dir 

ResetSettings: 
    'Reset Macro Optimization Settings 
    Application.EnableEvents = True 

Loop 

ThisWorkbook.Activate 

End Sub 

提前非常感谢, 奔

文件夹结构 后,将\ FY18 \(在文件路径上面所示)我有12页的文件夹(例如'03 - 2017' 年4月“例如'04。055.2017','11。055.2017','18。055.2017'

希望这可以帮助您Max?谢谢

+1

是的,这是可能的,但你给少一点信息。我需要知道文件夹的文件夹结构和语法。 – Max

+0

Hi Max,将在我的问题底部编辑... –

回答

1

你可以使用类似这样的出发点来定义文件的路径,

Dim MonthFolder as String 
    Dim DayFolder as String 
    Dim Path As String 

' These could be referenced from the Current Date or Cell Values, Input Boxes... 
' as long as they match your folder structure. 
    MonthFolder = May 
    DayFolder = 26 

    Path = "S:\Accounts\FP&A\" & MonthFolder & "\" & DayFolder & "\" 
相关问题