1

可変ファイル名を生成しようとしています。

ods pdf file = "D:\FileDirectory\&&mFileNameVariable&I .pdf" notoc;

これにより、可変ファイル名が生成されますが、拡張子の前にスペースが追加されます (例: FileName .pdf; FileName.pdf が必要)。

次のようなことができると読みました。

ods pdf file = "D:\FileDirectory\&&mFileNameVariable&I..pdf" notoc;

拡張子にドットを追加するには; しかし、そのマクロが機能しないことを試みると、WYSIWYG 値 (例: &&mFileNameVariable&I.pdf) を取得します。

文字列が「&I」で終わっているためだと思います。

私が考えた別の解決策ですが、それは不必要です / 回避策は、(FilePathAndName) をトリムするか、(FilePathAndName FileExtension の) 値を個別に連結することです。

洞察やフィードバックは大歓迎です。お時間とご協力をよろしくお願いします。

乾杯!

4

1 に答える 1

7

マクロ解決プロセスで 2 つのパスを実行しているため、ファイル名と拡張子の間に余分なピリオドが必要です (合計 3 つ、マクロ解決中に 2 つ、セパレータを表すために 1 つ)。

例えば

%let mFileNameVariable1=myfile;
%let l=1;
ods pdf file="C:\Temp\&&mFileNameVariable&l...pdf" notoc;  /*note 3 periods!!*/

オンログ

NOTE: Writing ODS PDF output to DISK destination "C:\Temp\myfile.pdf", printer "PDF".
于 2012-04-11T19:16:19.627 に答える