excel - 在使用VBA的名称中,如何使用 * 通配符打开FTP文件

  显示原文与译文双语对照的内容
0 0

我想从FTP站点的文件夹中打开一个文件。 这里文件夹具有多个同名的报告每天的时间戳 换句话说,报告

所以我试图在代码中使用一个野生字符 * 来获取今天的报告,见下面的代码

sReportDate = Format(ReportDate,"mmddyy")
ReportName ="_______Notification_of_Separation_______.POSFTPADPRFT1JFAGP02." & sReportDate &"*.csv" 
Workbooks.OpenText fileName:="ftp://UserID:Password@IPAddress/Separation Notifications/" & ReportName 

但它不工作也不打开文件。

但是,如果我硬编码报告名称,那么有些东西就会出现错误。

有帮助?

时间:原作者:5个回答

0 0

从 Excel VBA帮助中:

FileName Required需要英镑的字符串 要打开的工作簿的文件 NAME

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

既然你说目录中的所有文件都有"相同的NAME 只是时间戳",并且你在 sReportDate 中提供了它,那么为什么需要使用通配符?

实际上,文件名在日期之后有一个变量 timestamp,那么你需要询问文件夹以找到打开的相关文件。 在另一个问题中有一个开始: 对文件返回顺序的任何保证? 注意:当你检查目录—中的文件名时,你可以使用通配符,然后找到一个 MATCHES,你可以知道相关的NAME 并可以显式打开。

原作者:
...