目次1.サンプルデータ2.展開例3.REPLACEオプションが効かない?4.参考プログラム1.サンプルデータサンプルとして、以下2つのSASデータセットをExcelファイルとして出力してみます。以下は展開例で、引数delの値について、1段目がYで、2段目をNにしています。del=N);1段目をdel=Yにしているのは、同一ファイルが存在している場合に、事前に削除しておくためです。2段目をdel=Nにしているのは、「リスト.xlsx」を削除せずに、シート「個人」を追加するためです。以下のように、2シート「法人」と「個人」が存在する「リスト.xlsx」が作成されました。EXPORTプロシジャのオプションに、同一ファイルが存在する場合に置換するためのREPLACEオプションがあるのですが、これを指定しても意図した置換にならないんですよね・・・。同一ファイルが存在している状態で、REPLACEオプションで置換を試みると、ファイルが破損し、開くときに以下のようなコメントが表示されます。以下のように、不要なシート「回復済み_Sheet1」が生成され、意図通りの置換にならないです。それ故、引数delを設けており、事前に削除できるようにしている、というわけです。(以前は正しく置換できていたような・・・)4.参考プログラム以下は、参考プログラムになります。右上のコピーボタンを押せば、プログラム全体をコピーできます。シート名は31バイト以内としてください。出力されない可能性があります。outfileのバックスラッシュの入力が不正です。【SAS】サクッと複数の条件を組み合わせたクロス集計(割合)をする今度は、【SAS】サクッと複数の条件を組み合わせたクロス集計(件数)をする、の割合バージョンになります。以下のような、デリミタが半角スペースの文字列をグローバルマクロ変数化してみます。文字列以外の引数は既定値のまま展開してみます。ディレクトリ「C:\Users\●●●●●\Desktop」に保存してあるプログラム上で、展開した例になります。「C:\Blog\SAS\dcreate」の直下にdir1、dir2、dir3を階層順に作成する例です。ちなみに、このサンプルデータは、政府統計e-Statから取得し、それを少し加工しています。