代码在Windows上工作,但无法使其在MAC上工作(错误68)

在一位专家最亲切的帮助下,我能够实现我的目标:1)根据第3列中的条目自动创build文件夹结构; 2)在适当的列中自动创build一个超链接

代码可以在下面find

Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Columns(3)) Is Nothing Then Dim tr As String With Target tr = ThisWorkbook.Path & "\" & .Offset(, -2).Value If Len(Dir(tr)) = 0 Then MkDir tr MkDir tr & "\Subfolder 1" MkDir tr & "\Subfolder 2" MkDir tr & "\Subfolder 3" & "\Sub-subfolder 1" .Hyperlinks.Add .Offset(, 4), tr, TextToDisplay:="Name" End If End With End If End Sub 

我一直试图让这个工作在Mac上,但我总是得到错误68,然后debugging器打开在线

 If Len(Dir(tr)) = 0 Then 

我已经尝试在下面的行中引入引号

 tr = ThisWorkbook.Path & "\" & .Offset(, -2).Value 

  • 使用:
  • 使用\
  • 使用" " (基本上是空的空间)
  • 我尝试将"(denominator)"更改为application.pathseparator – 仍然没有。

绝对没有。

用户已经build议这个网页http://www.rondebruin.nl/mac.htm#Directory (见导演不存在的时候),这可能确实有效 – 我看到的问题是它没有似乎检查一个文件夹是否已经存在,我也不清楚如何创build子文件夹。

但是对于一些(顽固/愚蠢的)理由,我深信这一定会有所作为,而且我的生活过于复杂了。

有什么想法吗?

卢克

在Mac上,您应该使用正斜杠,/。

既然你不知道你是在PC上还是在Mac上,我build议使用文件系统对象,而不是你提到的shell调用,因为这样做你也需要知道你是在调用Windows命令行还是在调用Windows命令行mac bash脚本。 他们不一样。 :)

这里描述: http : //www.tek-tips.com/faqs.cfm?fid=4116