将数据从 Excel 导出到 Prism
虽然 Prism 可以打开 Excel 文件,但速度较慢。因此,建议编写一个 Visual Basic 宏,将选定的值导出为文本文件。下面的宏在 Excel 中运行时,会将工作表 1 的左上角区域(12 行、6 列)导出为逗号分隔值 (CSV) 文件,Prism 可以导入该文件。
Open "C:\data\july97\dr2.csv" For Output As #1
For I = 1 To 12
For J = 1 To 6
Print #1, Worksheets(1).Cells(I,J).Value; ",";
Next
写入 #1,
Next
关闭 #1
随后添加代码以启动 Prism、运行 Prism 脚本,并可能将结果从 Prism 导入回 Excel。
从 Excel 创建 PZC(Prism 脚本)文件
在构建从 Excel 运行 Prism 的系统时,您需要同时编辑 Excel VBA 语句和 Prism PZC 脚本。简化工作的一种方法是编写 Visual Basic 代码,将 PZC 文件从 Excel 导出。这样您只需编辑一个文件即可。例如,您可以使用以下 Visual Basic 代码:
Open "C:\Prism4\auto.pzc" For Output As #1
Print #1, “Shortlog”
Print #1, “SetPath C:\gp\prism25\”
Print #1, “Open generate.pzm”
Print #1, “openOutput fit.txt”
打印 #1, “ ForEach 500”
Print #1,“ GoTo R 1”
Print #1, “ 重新生成”
打印 #1,“ 转到 R 2”
打印 #1,“ WCell 5,1”
打印 #1,“Next”
关闭 #1
Shell ("C:\program files\prism5\prism.exe @C:\prism5\auto.pzc")
第一行创建了一个名为 auto.pzc 的新文件,并将其指定为文件编号 1。接下来的 10 行将您编写的 Prism 脚本命令导出到该文件中。下一行关闭该脚本文件,该文件由上文显示的最后一行启动。后续行将导入 Prism 导出的结果。
从概念上讲,将所有命令放入一个文件中并没有什么帮助。 您仍然需要区分Excel中的VBA代码与Prism的脚本命令。其优点在于,您可以将所有编辑工作集中在一个文件中完成,而不是两个文件。缺点是编写脚本会稍微困难一些,因为您必须将每一行都用引号括起来,并在行首加上“Print #1,”。
将 Prism 图表导入 Excel
除了导入 Prism 分析结果外,您可能还希望将 Prism 图表导入 Excel。导出图表本身不成问题,因为 Prism 脚本可以将图表或布局导出为 WMF 图片。问题在于将其导入 Excel,因为无法编写 Visual Basic 命令来导入图片。 您可以通过间接方式实现。在 Excel 中手动创建一个图片对象(显示控制工具栏,单击图片按钮,然后拖动以创建对象)。接着编写 Visual Basic 代码来更改该图片对象的内容。例如:
Sheet2.DRGraph.Picture = LoadPicture(Path$ + "dr2.wmf")