如何使用VBA在名称中打开带有* wild字符的FTP文件

时间:2012-07-03 20:09:23

标签: excel vba excel-vba

我想从FTP站点的文件夹中打开一个文件。 此文件夹有多个具有相同名称的报告,唯一的区别是时间戳,即每天的报告

所以我试图在我的代码中使用Wild Character *来获取今天的报告,请参阅下面的代码

sReportDate = Format(ReportDate, "mmddyy")
ReportName = "_______Notification_of_Separation_______.POSFTPADPRFT1JFAGP02." &   sReportDate  & "*.csv" 

Workbooks.OpenText fileName:="ftp://UserID:Password@IPAddress/Separation Notifications/" & ReportName 

但它无效,无法打开文件。

但是,如果我对其生效的报告名称进行硬编码,那么野性角色就会出现问题。

任何帮助??

1 个答案:

答案 0 :(得分:1)

从Excel VBA帮助:

  

FileName 必需字符串。要打开的工作簿的文件名

Windows系统上的各个文件的名称(我猜你在Windows下运行Excel)不能包含通配符。您必须指定要打开的文件的确切文件名。

由于你说目录中的所有文件都有“同一个名称,只有时差是时间戳”,而你在sReportDate中提供了这个,为什么还需要通配符呢?

如果实际上文件名在日期之后有一个变量时间戳,那么您将需要询问该文件夹以找到要打开的相关文件。在另一个问题中开始执行此操作:Does Dir() make any guarantee on the order of files returned?当您检查目录中的文件名时,可以使用通配符 - 然后,找到与您的日期匹配的文件名,您知道相关名称并且可以明确地打开它。