MS Office VBA具有称为 Application.PathSeparator
的属性。
我支持互操作性,但只能在Windows&amp上运行。MACOS,两个平台都使用相同的路径分离器。
建议使用 Application.PathSeparator
何时 em (而不是简单地简单地硬编码并保存22个按键(?
要清楚,i do 认为,在诸如stack Overflow之类的国际网站上发布代码时,支持国际差异很重要,因此我经常使用Application.International
属性,例如xlDateSeparator
,更重要的是,xlDateOrder
。(有关此处的更多信息(
这个问题是基于错误的假设,即Mac OS和Windows都使用相同的路径分离器字符。那是不正确的。
Mac OS X不使用后斜线((作为路径分离器。它像其他Unixlike操作系统一样使用前斜线(/(。在Mac OS命令行中,后斜线的作用像逃脱字符,因此在两个平台中使用相同的字符可能会导致意外的结果。
在某些情况下,使用Application.PathSeparator
甚至不是一个好主意,因为如果您从网络空间打开工作簿,例如。从浏览器中脱颖而出,正确的分离器将是/
。无论如何,Application.PathSeparator
不会注意到...
我知道,对于某些公司/文件共享应用程序,共享驱动器上的路径分离器是"/quot"而不是"。我最近看到了(2021年(。
其他答案表明,Mac OS X使用前向斜线/
以及Windows上的共享/网络驱动器(在application.pathseparator中未反映(。
所以猜猜是什么,我在我的VBA代码中使用了前向斜杠"/"
而不是Application.PathSeparator
来创建文件夹和打开文件以进行输出,并且在Windows下工作正常。