在每月文件夹名称

时间:2017-05-26 11:36:02

标签: excel vba excel-vba

我有12个文件夹(月份),在每个月的文件夹中,每周都有一个文件夹。在每周的文件夹中,有一大堆excel文件。

每周,我需要打开当前周文件夹中的所有文件,以便数据填充间接匹配公式。希望只需点击按钮即可完成此操作......

有没有办法引用指向相关月份和周的路径?例如。我更新主文件中的一个单元格,它会显示月份和周,并且VBA指向那里并ping这些文件?我正在尝试将一些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 - 2017年5月'然后在'04 - 2017年5月',例如,我有几周...(例如'04 .05.2017','11 .05.2017','18 .05.2017'

希望有助于Max?感谢

1 个答案:

答案 0 :(得分: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 & "\"