使用Dir具有contentenation和通配符的VBA语法错误

时间:2015-03-18 08:17:48

标签: excel vba excel-vba

我想循环显示一系列具有外观的文件

  Costs 2015-01 , Costs 2015-02, ..., Costs 2016-12

但是使用

YearNo = Year(Date)
path2 = Dir("C:\pathtofile\Costs " & YearNo & "-"& ?? & ".xlsx")

为path2的表达式提供语法错误。
我所期望的表达式会产生:

C:\pathtofile\Costs 2015-(all files having a two digit number after the "-").xlsx

(或者,至少文件名为Costs 2015-01 ......等等,因为Dir只返回文件名)

我尝试使用& YearNo & -?? & ".xlsx"& YearNo & "-??" & ".xlsx"以及&YearNo -?? &".xlsx",但这些都不起作用。有没有人对此有所了解?

编辑:我正在使用YearNo,因为该文件夹包含一堆文件,其中包含 Costs 2014 -... 表达式,我不想导入。此外,使用这种技术我相信该程序需要导入较少的数据,例如,2022年它只需要导入2022年的文件,而不是2015年直到2022年。

1 个答案:

答案 0 :(得分:1)

??是一个文字字符串,应该被视为(而不是变量)。它属于"引号"

path2 = Dir("C:\pathtofile\Costs " & YearNo & "-??.xlsx")