Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


7549 / 76732 ←次へ | 前へ→

【74769】ダイアログをキャンセルした後の処理
質問  3891  - 13/9/12(木) 15:10 -

引用なし
パスワード
   また、質問させてください。

ダイアログを開いて、名前をつけて保存させます
ファイル名は、初期値のまま保存する場合も、変更する場合もあります

書式1
Target = "初期値"
Application.Dialogs(xlDialogSaveAs).Show arg1:=Target

とやっていたのですが、ダイアログをキャンセルしたときにも、
OKと同じ処理に走ってしまうので、分岐させたいのですが、
このやり方だと、キャンセルという戻り値が取れません。

書式2
Dim BlnRtn As Boolean
BlnRtn = Application.Dialogs(xlDialogPrint).Show
という記述を見つけたのですが、この書式だと、 arg1:=Target の部分が
VBEにコンパイルエラーと返されてしまいます。

書式3
Dim BlnRtn As Variant
BlnRtn= IIf(Application.Dialogs(xlDialogSaveAs).Show(ARG1:=Target), "保存", "キャンセル")

と、true/falseを見させようとすると、今度は、戻り値として、
保存したファイル名を受け取ることが出来ません
このため、ファイル名を初期値から変更したときに、その名前を得ることができません。


煩雑な処理をすれば、できない処理では無いと思うのですが、
割と、普通の処理なので、スマートなやり方があるに違いないと思い、
質問させていただきました。

よろしくお願いいたします
2 hits

【74769】ダイアログをキャンセルした後の処理 3891 13/9/12(木) 15:10 質問
【74775】Re:ダイアログをキャンセルした後の処理 γ 13/9/12(木) 20:53 発言
【74778】Re:ダイアログをキャンセルした後の処理 γ 13/9/13(金) 6:57 発言
【74777】Re:ダイアログをキャンセルした後の処理 ichinose@ 13/9/13(金) 6:46 発言
【74779】Re:ダイアログをキャンセルした後の処理 3891 13/9/13(金) 9:13 お礼
【74780】Re:ダイアログをキャンセルした後の処理 13/9/13(金) 9:45 回答
【74799】Re:ダイアログをキャンセルした後の処理 3891 13/9/16(月) 16:34 お礼

7549 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free