我想从FTP站点的文件夹中打开一个文件。这个文件夹有多个同名的报告,唯一不同的是时间戳,即每天的报告。
所以我试图在我的代码中使用一个狂野字符*来获取今天的报告,参见下面的代码
sReportDate = Format(ReportDate, "mmddyy")
ReportName = "_______Notification_of_Separation_______.POSFTPADPRFT1JFAGP02." & sReportDate & "*.csv"
Workbooks.OpenText fileName:="ftp://UserID:Password@IPAddress/Separation Notifications/" & ReportName 但它不起作用,也不打开文件。
然而,如果我硬编码报告的名称,它的工作,有一些错误的狂野字符。
有什么帮助吗?
发布于 2012-07-03 22:00:41
来自Excel帮助:
FileName需要字符串。要打开的工作簿的文件名。
Windows系统上各个文件的名称(我猜您正在Windows下运行Excel )不能包含通配符。必须指定要打开的文件的确切文件名。
既然您说目录中的所有文件都有“相同的名称--唯一的区别是时间戳”,并且在sReportDate中提供了时间戳,那么为什么需要通配符呢?
实际上,如果文件名在日期之后有一个可变的时间戳,那么您需要查询文件夹以找到要打开的相关文件。在另一个问题中有一个这样的开始:在检查目录中的文件名时,Does Dir() make any guarantee on the order of files returned? You 可以使用通配符--然后,在找到与日期匹配的文件名之后,您就知道了相关的名称,并可以显式地打开它。
https://stackoverflow.com/questions/11318436
复制相似问题