エクセル2000です。
Sheet1を複製し名前をつけて保存するマクロを書きました。
以下のとおりですが、キャンセルされた場合でも「保存しました」のメッセージが出てしまいます。
キャンセルされたことを取得するにはどう書けばいいでしょうか?
Sub tesy01()
Dim ns As Workbook
Dim fn As String
Sheets("Sheet1").Copy
Set ns = ActiveWorkbook
With ns.Sheets(1)
.Cells.Copy
.Cells.PasteSpecial Paste:=xlValues
Application.CutCopyMode = False
fn = .Range("A1") & Format(Date, "yymmdd")
End With
Application.Dialogs(xlDialogSaveAs).Show ARG1:=fn & ".xls", ARG2:=1
ns.Close (False)
Set ns = Nothing
MsgBox "保存しました。"
ThisWorkbook.Activate
Sheets("Sheet1").Activate
End Sub
No.1ベストアンサー
- 回答日時:
Msgboxを使ったりして
Application.Dialogs(xlDialogSaveAs).Show
の戻り値を確認してみればわかるが,
OKを押した時はTrueで
Cancelを押した時はFalseだ。
#MSDNのどのページに載っているかよくわからんかった。
#そういやあ、http://support.microsoft.com/kb/139723/en-us の method2との違いはなんだろう?
ありがとうございました。
おかげさまで解決しました。
Sub tesy01()
Dim ns As Workbook
Dim fn As String
Sheets("Sheet1").Copy
Set ns = ActiveWorkbook
With ns.Sheets(1)
.Cells.Copy
.Cells.PasteSpecial Paste:=xlValues
Application.CutCopyMode = False
fn = .Range("A1") & Format(Date, "yymmdd")
End With
msg = IIf(Application.Dialogs(xlDialogSaveAs).Show(ARG1:=fn & ".xls", ARG2:=1), "保存", "キャンセル")
ns.Close (False)
Set ns = Nothing
MsgBox msg & "しました。"
ThisWorkbook.Activate
Sheets("Sheet1").Activate
End Sub
とやってみました。
No.3
- 回答日時:
Sub test02()
a = Application.Dialogs(xlDialogSaveAs).Show
If a = False Then
MsgBox "Cancelされた"
End If
End Sub
を実行してX(キャンセル)ボタンをクリックしてみればわかる。
普通に選択されたらTrueが帰る。
No.2
- 回答日時:
Sub tesy01()
Dim ns As Workbook
Dim fn As String
Dim s As Boolean
Sheets("Sheet1").Copy
Set ns = ActiveWorkbook
With ns.Sheets(1)
.Cells.Copy
.Cells.PasteSpecial Paste:=xlValues
Application.CutCopyMode = False
fn = .Range("A1") & Format(Date, "yymmdd")
End With
s = Application.Dialogs(xlDialogSaveAs).Show(fn & ".xls", 1)
ns.Close (False)
Set ns = Nothing
If s Then
MsgBox "保存しました。"
End If
ThisWorkbook.Activate
Sheets("Sheet1").Activate
End Sub
でどうでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) vbaのエラー対応(実行時エラー7:メモリが不足しています) 4 2023/04/24 00:20
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) エクセルのマクロを使ってメールを送る方法について教えてください 2 2022/03/29 01:36
- Visual Basic(VBA) オブジェクトが見つかりません 1 2023/06/24 19:43
- Visual Basic(VBA) VBA 請求書自動作成 3 2022/04/24 01:58
- Visual Basic(VBA) 3個のfileのセルデータを1個のfileのセルに貼り付けるVBAコードですが。 1 2023/02/20 09:21
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Visual Basic(VBA) ExcelVBAでDo Until loopのネスト、IF文を使って一致する物と一致しない物としたい 11 2022/12/24 17:46
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
このQ&Aを見た人はこんなQ&Aも見ています
-
「どうして捨てられないの?」前妻の物を捨てられない男性の心理って?
前妻の物を捨てられない理由に加え、捨てるための手段はあるのかを専門家に聞いてみた!
-
「プリンタの設定」ダイアログボックスのプリンタを指定したい。
その他(プログラミング・Web制作)
-
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
[ExcelVBA] Application.Dialogs(xlDialogPrint).Show とユーザーフォームについて
Visual Basic(VBA)
-
-
4
印刷をキャンセル
Excel(エクセル)
-
5
EXCEL VBA 印刷プレビューダイアログのボタン操作を判定したい
Visual Basic(VBA)
-
6
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
7
エクセルVBAで手差しトレイを指定させたい。
Excel(エクセル)
-
8
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
9
EXCELでダイアログボックスを開く時表示ファイル名を指定したい
その他(プログラミング・Web制作)
-
10
キャンセル処理の方法が分かりません
Excel(エクセル)
-
11
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
12
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
-
13
エクセルVBA 組み込みダイアログのコンパイルエラーについて
Excel(エクセル)
-
14
フォントの大きさ
Visual Basic(VBA)
-
15
アクセスVBAのMe!と[ ]
Access(アクセス)
-
16
(Excel VBA)and,orについて
Excel(エクセル)
-
17
VBAでループ内で使う変数名を可変にできないか。
Visual Basic(VBA)
-
18
Excel マクロ:変数を複数使う場合
Excel(エクセル)
-
19
ExcelVBAを使って、値がある場合は作業を繰り返し実行するプログラムを作成したい。
Visual Basic(VBA)
-
20
マクロで印刷→セルの値から部数変更するには
Excel(エクセル)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
友人と2人で行くはずの旅行を...
-
通販でキャンセルした商品が届...
-
「参考になった」キャンセル方法
-
当日キャンセル料の請求について
-
急に旅行に行けないかもしれな...
-
タイミーで応募キャンセルされ...
-
友人(4人)との旅行当日体調不...
-
旅行前に友達と喧嘩をしました...
-
宿からの手紙で浮気がバレた!
-
裏DVD
-
当日キャンセルした飲み会のキ...
-
飲み会を当日キャンセルしたん...
-
これってかなり迷惑でしょうか...
-
当日キャンセルしてしまった美...
-
前からの約束、当日に連絡がき...
-
美容室でのネット予約を2日くら...
-
2回連続ママ友にドタキャンされ...
-
キャンセル料を払いたくありません
-
ドタキャンの知人に飲み会のキ...
-
至急!詐欺の可能性がある裏DVD...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「参考になった」キャンセル方法
-
友人と2人で行くはずの旅行を...
-
友人(4人)との旅行当日体調不...
-
お葬式で旅行がキャンセルに
-
タイミーで応募キャンセルされ...
-
2回連続ママ友にドタキャンされ...
-
急に旅行に行けないかもしれな...
-
裏DVD
-
旅行のキャンセル料について相...
-
至急!詐欺の可能性がある裏DVD...
-
通販でキャンセルした商品が届...
-
confirm の OK、キャンセル ...
-
キャンセル出来ない商品を返品...
-
当日キャンセル料の請求について
-
職場のご飯会についてです。 半...
-
当日キャンセルした飲み会のキ...
-
脱毛の予約をサロンの都合でキ...
-
美容室でのネット予約を2日くら...
-
先日、前回行った美容院の予約...
-
社員旅行、体調不良でドタキャ...
おすすめ情報