GraphPad Prism  6 ユーザーズガイド

Prism スクリプトと Excel を組み合わせた使用

Prism スクリプトと Excel を組み合わせた使用

Previous topic Next topic No expanding text in this topic  

Prism スクリプトと Excel を組み合わせた使用

Previous topic Next topic JavaScript is required for expanding text JavaScript is required for the print function  

 

Excel から Prism へのデータのエクスポート

Prism で Excel ファイルを開くことができますが、この操作には時間がかかります。代わりに、Visual Basic マクロを作成して、選択した値をテキスト ファイルとしてエクスポートします。下記のマクロは、Excel から実行し、ワークシート 1 (12 行、6 カラム) の左上隅のデータを Prism へのインポート用にカンマ区切り (CSV) ファイルにエクスポートするものです。

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

Write #1,

Next

Close #1

この後に、Prism を起動し、Prism スクリプトを実行するコードを続けます。Prism からの結果を Excel にインポートするコードを続けることもできます。

Excel から PZC (Prism スクリプト) ファイルの作成

Excel から Prism を実行するシステムを作成する際、Excel VBA ステートメントと Prism PZC スクリプトの両方を編集する必要があります。作業を簡素化する 1 つの方法として、PZC ファイルを Excel からエクスポートする Visual Basic コードを記述する方法があります。これにより、1 つのファイルを編集するだけになります。たとえば、下記のような VBA コードを使用できます。

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”

Print #1, “ ForEach 500”

Print #1, “ GoTo R 1”

Print #1, “ Regenerate”

Print #1, “ GoTo R 2”

Print #1, “ WCell 5,1”

Print #1, “ Next”

Close #1

Shell ("C:\program files\prism5\prism.exe  @C:\prism5\auto.pzc")

最初の行では、auto.pzc という新しいファイルを作成し、ファイル番号 1 を付けます。次の 10 行で、そのファイルに書き込む Prism スクリプト コマンドをエクスポートします。次の行でこのスクリプト ファイルを閉じます。このファイルを上記の最後の行で起動します。この後の行で、Prism でエクスポートされた結果をインポートするなどの処理を追加できます。

すべてのコマンドを 1 つのファイルにまとめることは概念的には便利とは言えません。Excel 内の VBA コードと Prism のスクリプト コマンドとを区別する必要性は残ります。利点は、2 つのファイルの代わりに、1 つのファイル内ですべての編集作業を行える点です。欠点は、各行を引用符で囲み、先頭に "Print #1," を付ける必要があるため、スクリプト作成が多少難しくなる点です。

Prism グラフの Excel へのインポート

Prism 分析の結果をインポートするのに加え、Prism グラフも Excel にインポートしたい場合があります。Prism スクリプトではグラフまたはレイアウトを WMF 画像としてエクスポートできるので、グラフのエクスポートは問題ありません。問題となるのは Excel へのインポートです。画像のインポートを行う Visual Basic コマンドを記述する方法はありません。これは間接的に行うことができます。Excel で手動で画像オブジェクトを作成します (コントロール ツールバーを表示し、画像ボタンをクリックし、ドラッグしてオブジェクトを作成)。続いて、画像オブジェクトの内容を変更する Basic コードを記述します。以下に例を示します。

Sheet2.DRGraph.Picture = LoadPicture(Path$ + "dr2.wmf")