Mac宏的词

时间:2016-03-24 22:50:50

标签: macos vba ms-word word-vba-mac mac-office

我在Yosemite 10.10.5的MacBook上使用Word for Mac 2011。在Word中我试图创建一个宏,将一个名为home.gif的文件插入到Word文档中。 home.gif位于名为“List”的目录中,该目录是我桌面上的“Kindle”的子目录(Desktop \ Kindle \ List)。

录制的步骤为:插入>>照片>>图片来自文件...>>桌面>>点燃>>列表>> home.gif>>插入

结果如下:

Selection.InlineShapes.AddPicture filename:= _
     “/Users/macbookpro/Desktop/Kindle/List/home.gif”, LinkToFile=False._
     SaveWithDocument=True
Selection.InlineShapes.AddPicture filename:=”, LinkToFile:=False, _
     SaveWithDocument:=True   

在另一个论坛上,我读到连字符应该是冒号,所以我将其更改为:

Selection.InlineShapes.AddPicture filename:= _
     “Users.macbookpro.Desktop.Kindle.List.home.gif”, LinkToFile=False._
     SaveWithDocument=True
Selection.InlineShapes.AddPicture filename:=”, LinkToFile:=False, _
     saveWithDocument:=True   

提出:“”无法在中断模式下执行代码“。

1 个答案:

答案 0 :(得分:1)

您需要的是

Selection.InlineShapes.AddPicture filename:= _
  "Macintosh HD:Users:macbookpro:Desktop:Kindle:List:home.gif", _
  LinkToFile:=False, _
  SaveWithDocument:=True

" Macintosh HD"是文件所在的卷(驱动器)的名称。您的驱动器可以被称为其他东西。如果是这样,您将需要更改" Macintosh HD"这个名字。您可以通过右键单击Finder中的home.gif文件并单击“获取信息”选项来查看完整路径名称。看看" Where",你会看到文件夹的路径,但是用箭头而不是冒号(:)

现在,Mac OS X通常更喜欢带有正斜杠的Unix风格路径。 (由于历史原因,它们被称为" POSIX" Applescript中的文件名)。但是Microsoft Office for Mac 2011中有一些相当古老的代码,并不是所有东西都能识别POSIX文件名。在这种情况下,Word的宏录制器有两个错误:

  • 它记录POSIX路径+文件名。 POSIX路径+文件名将是您文件的正确名称,但AddPicture实际上不能使用POSIX名称。使用其他样式的文件名(" HFS")和冒号有效,但你需要我所说的完整路径名
  • 由于某种原因,它会记录第二个AddPicture语句 空路径名称("")。这不起作用,你应该删除它。

请注意,命名参数如filename,LinkToFile和SaveWithDocument必须后跟":=",而不仅仅是" ="。所以你需要

SaveWithDocument:=True

SaveWithDocument=True

您收到消息的原因"无法在中断模式下执行代码"通常是因为您已将VBA置于调试模式而不是停止执行。当你这样做时,它真的等待继续。但是,如果您尝试启动另一个宏,您将收到该消息。