我想在宏中打开一个excel工作簿,该宏具有常量名称,变量日期和由字母和数字组成的变量后缀。例如。
" Allpostings_041616_big232.xlsx"可能是4月16日的文件名
4月17日文件可能如下所示
" Allpostings_041716_agd214.xlsx"
如果我想在我的宏中为日期选择文件,我将如何在VBA中编码?
答案 0 :(得分:2)
考虑:
Sub dural()
Dim P(1 To 5) As String
P(1) = "C:\TestFolder\"
P(2) = "Allpostings_"
P(3) = Format(Now(), "mmddyy") & "_"
P(4) = "big232.xlsx"
s = Join(P, "")
Workbooks.Open Filename:=s
End Sub
只需修改P(4)
行即可满足您的需求。
修改#1:强>
如果所有可能的文件都包含在一个文件夹中,并且所有文件都具有相同的名称架构,那么这里有一种方法可以找到要打开的正确文件:
Dir()
循环收集所有文件名答案 1 :(得分:0)
另一种方式......
Sub test()
workbookopen ("big232")
workbookopen ("agd214")
End Sub
Function workbookopen(lastpart As String)
ChDir ("C:\work\")
Files = Dir("*.xlsx")
Do While Files <> ""
If Files = "Allpostings_" & Format(Now(), "mmddyy") & "_" & lastpart & ".xlsx" Then
Workbooks.Open (Files) '"Allpostings_" & Format(Now(), "mmddyy") & "_" & lastpart & ".xlsx"
End If
Files = Dir
Loop
End Function