1

如何解析 AppleScript 和 Word(对于 MAC)VBA 之间的值?我的意思是从 Word VBA 向 AppleScript 发送值,同样将值发送回 VBA。

这个想法是将一个值(字符串)解析为 AppleScript。这将处理该值并将输出值解析回 Word VBA。解析后的值必须是一个数组。

例如,

Dim arrStr() As String
arrStr() = MacScript("<code here>")

?

4

1 回答 1

1

数组的 Applescript 等效项是列表变量。它像这样存储值{val1, val2, val3}并作为字符串传回。然后,您要做的是使用 VBA 方法Split将它们解析为数组。下面的示例演示了这一点。

Sub TestAppleScript()
    Dim MyScript As String, iNoTimes As Integer, MyArray As Variant
    Dim arrStr() As String

    iNoTimes = 2

     MyScript = "set ArrayReturn to {}" & vbNewLine
     MyScript = MyScript & "repeat with i from 1 to " & iNoTimes & vbNewLine
     MyScript = MyScript & "   set end of ArrayReturn to """"" & vbNewLine
     MyScript = MyScript & "   set item i of ArrayReturn to i" & vbNewLine
     MyScript = MyScript & "end repeat" & vbNewLine
     MyScript = MyScript & "return ArrayReturn"

    MyArray = MacScript(MyScript)

    If MyArray <> "" Then arrStr = Split(MyArray, ",")
End Sub
于 2013-07-09T05:06:35.483 回答