問題タブ [sas-macro]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sas - SAS では、データ ステップの外で、マクロ変数の文字を空白に置き換える最良の方法は何ですか?
SAS では、データ ステップの外で、マクロ変数の文字を空白に置き換える最良の方法は何ですか?
使い勝手が良さそうTRANSLATE
な機能です。ただし、%SYSFUNC
この関数で使用する場合、パラメーターは引用符で囲まれません。代わりに空白を使用する必要があることをどのように示しますか?
global - SAS マクロ GLOBAL スコープ
マクロ内で作成されたすべてのマクロ変数をスコープ内でグローバルにする簡単な方法はありますか?
すなわち:
toolbar - ツールバーからSASコードまたはマクロを送信する
SASスクリプトまたはマクロをBaseSASのツールバーボタンに割り当てることは可能ですか?つまり、マクロまたはsasスクリプトを「dm」できますか?
sas - マクロ関数の結果をSASのマクロ変数にどのように割り当てますか?
タイムスタンプを作成するマクロがあります(出力ファイル名に追加するため)。ただし、マクロが値を割り当てるマクロ変数を覚えておく必要はなく、マクロの結果にマクロ変数を割り当てることをお勧めします(十分に循環していない場合)。
これは現在のマクロです。
これを機能させるためにどのように引用しますか?また、マクロから「%let tms =」を削除するだけですか?
また、次のODS割り当てステートメントでも同じ引用が機能しますか?
お時間を割いていただきありがとうございます。
sas - 別のセッションからのリモート SAS 作業ライブラリーの参照
SAS セッションで問題が発生したのに、リモート ワーク ライブラリ (RWORK) に重要なファイルがあるためにセッションを閉じることができなかった経験はありませんか??
私は確かに持っています!では、別の (新しい) セッションからそのライブラリにアクセスするにはどうすればよいでしょうか?
sas - SAS で CALL EXECUTE スタックの実行順序を変更できますか?
SAS 9.1.3 を使用して DATA ステップでマクロを呼び出していますが、マクロは PROC REPORT ステップを生成するため、CALL EXECUTE を使用してそれを呼び出し、それらすべての PROC REPORT ステップを生成し、その後すべてを実行しています。データステップ。
私は配列を使用しており、この配列内のすべての要素に対して毎回マクロが実行されます。
問題は、レポートの出力が (通常) 逆方向に出力されることです。最初に question3 が出力され、次に 2、次に 1 が出力されます。
CALL EXECUTE の実行順序を変更して、質問レポートを順番に印刷できるようにする方法はありますか、それとも独自のことを行うだけですか?
ありがとう!
sas - SAS マクロを使用して Windows ディレクトリからファイル名のリストをパイプする
以下のマクロを修正して、マクロ パラメータを dir コマンドの「場所」引数として受け入れるようにしようとしています。ただし、ネストされた引用符の問題により、正しく解決できません。%str(%') の使用は機能せず、何らかの理由で関数の引用も機能しません。
ファイルパスにスペースが含まれていない場合(例: C:\temp\withnospace)、中間引用符が必要ないため、マクロは正常に機能します。ただし、スペースを含むファイルパス(「C:\temp\with space\」など) でこのマクロが機能する必要があります。
助けてください!
macros - SASマクロインデックスまたはその他?
マクロを繰り返したい169の町があります。(タウンコードではなく)タウン名を使用して出力ファイルを保存する必要があります。TOWN
タウンコードとタウン名のデータセット( )があります。%let
i = town-codeである反復ごとにtown-nameに設定されるステートメント を持つことは可能ですか?
index関数を使用して町の名前を一覧表示できることは知っていますが、%let
i=TOWN.town-codeのときにステートメントがTOWN.town-nameに設定されるようにindex関数を設定する方法が必要です。
以下のすべての答えは可能のようです。今のところ、%let =%scan(、&i)オプションを使用しています。制限は、町の名前が複数の単語になる可能性があることです。そのため、後で修正するスペースをアンダースコアに置き換えました。
これは私のマクロです。169の町のそれぞれに優れたprocレポートを出力します。町の名前としてExcelファイルを保存し、ヘッダーに町の名前を含める必要があります。次に、Excelで、169個のワークシートすべてを1つのブックにマージします。
sas - SAS マクロ インクルード ガード
C++ などの他のプログラミング言語では、インクルード ガードを使用して、同じコードが複数含まれないようにします。
C++ では次のようになります。
SAS マクロ関数の定義に包含ガードを組み込むことは理にかなっていますか? そして、それはどのように行われるべきですか?