1

在此处输入图像描述我用来创建二进制文件的这段代码:

dim eFile as FolderItem
dim output as BinaryStream
eFile= GetSaveFolderItem("application/vnd.ms-word", "mydocument.doc")
output.write  "User Name: "+" User Name field"+chr(13)
output.write  "Website: "+" Website field"+chr(13)
output.close

我想在那个word文档中插入表格格式。

4

2 回答 2

3

以下是有关如何在 Mac OS X 上执行此操作的更多详细信息:

熟悉应用程序“AppleScript Editor”。

在新的脚本窗口中输入以下脚本:

tell application "Microsoft Word"
    set d to active document
    get content of text object of d
end tell

如果您在 Word 中打开了一个文本文档,然后运行此脚本,它应该在脚本代码下方的“结果”窗格中打印它的纯文本。

以同样的方式,您可以更改 Word 文档中的文本:

tell application "Microsoft Word"
    set d to active document
    set content of text object of d to "new text"
end tell

这是通过 Applescript 在 Word 中读取和写入文本的基础知识。学习如何向现有文本添加文本或更改字体等,您需要阅读 Word 的“字典”,您可以在 AppleScript 编辑器中打开它,请参阅“文件”菜单。

有关 AppleScript 的更多帮助,请访问http://www.macscripter.net

现在,要将其与 REALbasic 一起使用,请创建以下脚本:

on run {newContent}
    tell application "Microsoft Word"
        set d to active document
        set content of text object of d to newContent
    end tell
end run

将其保存为脚本文件(文件扩展名 .scpt),例如“SetContentInActiveWordDocument.scpt”

然后将此脚本文件拖到您的 REALbasic 项目中,它会以斜体显示为名为“SetContentInActiveWordDocument”的项目。

您现在可以像调用函数一样调用此 SetContentInActiveWordDocument,将字符串传递给它。

例如,写:

eFile.Launch() // this should open an existing word file if it exists in "eFile"
SetContentInActiveWordDocument("the new text") // replaces the text in the opened word file

但是,要在 Word 文档中创建表格,事情会变得更加复杂。通过这种方式,您只能将字符串和数字从 RB 传递给脚本,因此,如果您有一个要放入表中的值数组,则必须将数组值转换为具有唯一分隔符的字符串,传递此字符串到脚本,然后字符串再次被拆分为各个字段。

如果您购买“脚本调试器”,它也会有很大的帮助——它不仅可以让您单步执行脚本,而且还提供了一个“资源管理器”,让您可以查看正在运行的应用程序的所有值,从而更容易弄清楚您需要什么想要访问。我使用 Script Debugger 来查看如何仅通过其资源管理器访问内容。没有这个,您必须从脚本字典中找出它,如果您没有这方面的经验,这通常会非常困难。

(之后)

我尝试使用 Word 2008 添加甚至读取表格。尽管在“网络”上找到了几个表明这应该可以工作的示例,但我无法得到任何引用“活动文档”中表格的工作,如下所示:

tell application "Microsoft Word"
    get table 1 of active document
end tell

我不知道这是 Word 2008 还是我的特定安装的一般问题。对不起,我没有其他版本可以测试。这让你自己去谷歌搜索这样的例子,看看你是否能理解它。在任何情况下,首先在脚本编辑器中开发和测试您的代码,然后再尝试使其与 REALbasic 一起使用。

此外,谷歌搜索“Word 2004 AppleScript 参考”,这是一个相当全面的使用 Word 和 AppleScript 的指南。

于 2013-05-15T22:31:26.730 回答
1

Real Studio 可以本地与 MS Word 和 Excel 对话,但不能在 Mac 端(或至少在现代版本的 Real Studio 和 MS Office 中)。

要通过 Real Studio 在 Mac 上做同样的事情,你必须学习如何通过 AppleScript 来做这件事,AppleScript 可以通过Real Studio 工作。我不是 Applescript 开发人员,所以我无法帮助您。

于 2013-05-15T17:44:21.510 回答