ここでの目的は、JMP データ テーブルを Excel スプレッドシートにリンクすることです。 Excel ユーザーがスプレッドシートにデータを入力している間、データ テーブルに (開くとき、または開いている間継続的に) 新しいデータが自動的に再入力されるようにしたいと考えています。 毎回新しいデータを再コピーする必要をなくし、コピー エラーのリスクを排除し、最終的に母集団を検証したいと考えています。これは可能ですか?可能であれば、どのように実行されますか?
私はスクリプトについては詳しくありません。スクリプトの作成や他のブログへのアドバイスをいただければ幸いです。
よろしくお願いします、
ジェフ
まさにこれが私が演じたいものです。スクリプトについては詳しくありません。この件について話し合ってもいいでしょうか?
ありがとう、
ジェフ
ハドリーが書いたことに付け加えます。 ご要望を理解できたとしたら、新しい Excel シートから新しいテーブルを作成するだけではなく、同じ JMP データテーブルを Excel シートの新しいデータで更新したいということです。 後者が本当であれば、Hadley の言うことが正しい場合、自動生成されたインポート スクリプトを使用し、新しいデータ (新しいデータ テーブル内) を取得するたびにそれを再実行するのが最も簡単な方法になります。
それが最終的に達成したいことであると私が考える場合、これが役立つかもしれません:
Names default to here(1);
// Excel Sheet you get the new data from
excelFile = "Wetterdaten.xlsx";
// current data table - which has data from an earlier time point of the Excel file
cdt = Current Data Table();
// get the name of the JMP table and the current number of rows
cdtName = cdt << get name();
n_Rows = NRows();
// use the import script used when importing the Excel file the first time
// you need to adjust this if the Excel file will be changed in the structure or other columns have been added or placed to other positions.
dtHelp = Open(
excelFile,
Worksheets( {eval(cdtName)} ),
Use for all sheets( 1 ),
Concatenate Worksheets( 1 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 1 ),
Data Starts on Row( 2+ n_Rows ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 )
), Invisible
);
// Now just concatenate the JMP Table with the new imported data - but only with the data after the number of rows from the current JMP table.
cdt << Concatenate (dtHelp, Append to first table);
// delete helping table
Close(dtHelp);
いくつかの気象データを使用した完全な例を含む zip ファイルとインポート データが添付されています。両方ともこのスクリプトが含まれており、Excel ファイルを呼び出してデータを取得し、開いているデータ テーブルに追加するスクリプトを実行できます。 。 また、それを説明するドキュメントもあります(残念ながらドイツ語ですが、オンライン翻訳者がうまく機能するはずです。これは数年前に作成しました)。
利点は、「古い」データの品質チェックなど、データ テーブルに加えたすべての変更が保持され、新しい数式列が新しいデータに対しても機能することです。
ああ、Excel テーブルにもう 1 つコメントがあります。 すでにインポートされている Excel シート データを変更した場合 (別名、行番号 = JMP テーブルの行数の後) は、インポートするだけ、または現在の行の後に行を追加するだけであるため、これらの変更はデータ テーブルでは更新されません。 。
やあ、
これを行う最も簡単で単純な方法は、開いている JMP ウィンドウに Excel ファイルをドラッグすることです。これにより、Excel インポート ウィザードが開きます。そこから、インポート設定を調整し、テーブルを正しい形式でインポートし、保存できます。テーブルには「ソース」スクリプトがあり、これを押すと、新しいデータで更新されたテーブルが再インポートされます。それはあなたがやろうとしていることを達成するのに役立ちますか?