dir函数在excel vba中发现xls不是xlsx

我在使用filter的Excel VBA编程中使用dir()函数为“.xls”。

但是我的input文件的扩展名都是".xls"".xlsx" ,这些文件必须在这个过程中被使用。

在许多系统中,即使在macros中将filter指定为".xls" ,macros也会选取".xlsx"".xls"文件。

但是在一些系统中,它只拾取"xls"文件而不是".xlsx"文件。

有什么具体的原因呢?

为什么不使用".xls?"".xls*"作为您的Dirfilter? 即

 MyFile = Dir("*.xls?") 

要么

 MyFile = Dir("*.xls*") 

当然这并不回答“为什么会发生这样的问题”。 只是如何解决它。