列名の問題私のスクリプトで、JMP が次の構文を認識しないという問題があります。 スクリプトを開いてctrl + Rを押すか、右クリックしてスクリプトを実行すると、正常に動作します。 しかし、スクリプトをアドインに添付してカスタム メニューから実行すると、何らかの理由で "column name()" が正しく評価されず、回避策が思いつきません。 回避策のアイデアはありますか?
ありがとう。
joinDt << New Column( "失敗",
数値、
連続、
Formula( Eval( 列名( 3 ) ) + eval( 列名( 5 )) ),
評価フォーラム );Re: 列名の問題<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />この投稿への返信がなくて申し訳ありません... 1年以上経ちます。しばらく忙しくて、作業中のスクリプトに戻る機会がありませんでした。 とにかく、ありがとう...あなたが与えた解決策はうまくいきました。スクリプトをローカルで実行するとき (ctrl+R) に動作する場所と、アドインから実行するときに動作しない場所との不一致は、古い変数の問題でした。JMP9 を使用すると、「Names default to here();」関数を使用してローカルを強制できます。最初にグローバルをクリアしたかどうかは覚えていませんが、今はそこにあることはわかっています。 あまりにも長いので詳細をすべて覚えているわけではありませんが、誰かがこのようなものに出くわした場合に備えて、更新する価値があると考えました.
Re: 列名の問題私が書いたスクリプトで同様の問題がありましたが、列の名前を引き出すのではなく、列を参照する必要がありました。 スクリプト ウィンドウからの実行は問題ありませんでしたが、埋め込んで実行すると機能しませんでした。 それを修正するには、すべての列の詳細の前に : を含める必要がありました。 :Column Name(2) を試しましたか?Re: 列名の問題申し訳ありませんが、私の投稿はすべて切り捨てられているようです...
機能していなかった他のスクリプトの重要な部分: col_name = column name(1) ;
エラー メッセージ:
'Subscript' のアクセスまたは評価でオブジェクトを添字化できません。列名( 1 )
JMP9を実行しています。 i はここで有効な値です。問題は、列名 () の処理方法にあるようです。Re: 列名の問題これについてもう少し詳しく説明します。スクリプトを実行するどちらの方法でも、ほぼ同じデータ テーブル出力が生成されます。 スクリプトを開いて実行し、ctrl+R を押すと、式ボックスに eval(列名 (x)) が入力され、正しく評価されます。
アドイン メニューからスクリプトを実行すると、同じ数式でほぼ同一のデータ テーブルが生成されます (正しく実行されたスクリプトの出力テーブルから数式をコピー/貼り付けて、正しく実行されなかったテーブルに貼り付け、適用/OK を押しても)。しかし、私は欠損値になってしまいます。
別のスクリプトでこの問題を見たことがあります。スニペットは次のとおりです。
For( i = 1, i <= n, i++,
現在のデータ テーブル (制限);
If( !Excluded(行の状態( i ) ),
col_name = 列名( 1 )[/*####*/i];
...
)
エラー メッセージ:
'Subscript' のアクセスまたは評価でオブジェクトを添字化できません。列名( 1 )
JMP9を実行しています。 i はここで有効な値です。問題は、列名 () の処理方法にあるようです。
申し訳ありませんが、問題を投稿しています...ここに重要なコードの部分があります:
col_name = 列名( 1 )[/*####*/i];
エラー メッセージ:
'Subscript' のアクセスまたは評価でオブジェクトを添字化できません。列名( 1 )
JMP9を実行しています。 i はここで有効な値です。問題は、列名 () の処理方法にあるようです。
メッセージの編集者: mjdeez