
Application.DisplayAlerts = False
XXXXXXXX
Application.DisplayAlerts = True
で、確認画面を出さずにXXXXXXXXの処理をすることができますが、
その確認画面に、いくつかの選択ボタンがある場合、
確認画面を出さずに、かつ、任意のボタンを押した状態で処理を進めさせるには、どのようにすればよいのでしょうか?
そのまま Application.DisplayAlerts を使うと、確認画面は出ないものの
デフォルトのボタン(フォーカスがあるボタン)が押された状態で、
処理が進められてしまうようです。
Application.DisplayAlerts を使わない別な方法でもかまいません。
ご存知の方、ご教授いただけると幸いです。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
開くときに確認ダイアログが出るのは「読み取り専用」ではなく「読み取り専用推奨」だと思いますがそれはさておき。
#「読み取り専用」なら選択出ません
http://msdn.microsoft.com/ja-jp/library/microsof …
にあるとおりOpenメソッドでReadOnlyパラメータをFalseに設定してやればいいような。
ついでに、このダイアログを出さないだけならApplication.DisplayAlertsではなくWorkbooks.OpenでIgnoreReadOnlyRecommendedをTrueにすればよさそうです。
Workbooks.Open ○○○.xls, IgnoreReadOnlyRecommended:=True
だけで、無事に通常モードで開くことができました。
あとは、ブック共有になっているので、これを解除できれば、処理を進めることができます。
どうもご回答ありがとうございました!
No.1
- 回答日時:
Application.DisplayAlerts 使わない場合は、コードで任意の処理をする事になります。
1.処理の前にチェック
2.エラートラップを使って、任意のエラー対策を行う。
という方法になります。
1は、保存ファイル名の重複(同一ファイル名)の事前チェック等。
2は、on error goto 等でエラー番号をチェックして任意の処理。
具体的な処理内容が不明なので、一般的な回答になります。
この回答への補足
ご回答ありがとうございます。
ただ、回答の意味が良くわかりませんでした。
補足しますと・・・
XXXXXXXXの処理部分を含めると、現在、以下のようなコードになっています。
Application.DisplayAlerts = False
Workbooks.Open ○○○.xls
Application.DisplayAlerts = True
○○○.xlsに読み取り専用がかけられているため、
Application.DisplayAlerts を使わずに実行すると、
以下のメッセージダイアログが出ます。
---
'○○○.xls'を変更し、保存する必要がなければ、読み取り専用で開いてください。読み取り専用で開きますか?
[はい(Y)] [いいえ(N)] [キャンセル]
---
メッセージダイアログを出さないように、Application.DisplayAlerts を指定して動作させると、
[はい(Y)]ボタンにデフォルトフォーカスされているためか、読み取り専用で開いてしまいます。
これを、メッセージダイアログを出さずに、[いいえ(N)]ボタンを押したときと同じ状態で、
つまり、読み取り専用ではなく開きたいのです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- デスクトップパソコン ガレリアゲーミングPCを使用しています。 電源ボタンを押したら動くのですがガレリアのロゴが出てパスワ 3 2022/03/26 13:59
- Windows 10 ノートPCの「アップデートナビ」画面について 1 2023/07/04 21:27
- Access(アクセス) Access IF文でテーブルに存在しない場合の処理について 2 2022/10/10 18:09
- iPhone(アイフォーン) iPhone13について。 母がiPhone13を最近買ったのですが、 今困ってるので教えてほしいで 5 2022/12/30 22:54
- Java Javaプログラミングの質問になります。 ボタンを押下した時に画面遷移して 画面から戻ってきた時のi 1 2023/06/26 07:50
- その他(プログラミング・Web制作) uwscとWinShotを使いスクリーンショットを撮る 1 2022/06/30 21:15
- プリンタ・スキャナー キャノンmp490プリンター【エラー番号5400】で【プリンタートラブルが発生しました。電源を入れ直 2 2023/07/24 17:45
- ノートパソコン Windows10のノートパソコンをさっきまで使っていて、指紋がついてたからぱっぱっとティッシュでキ 6 2022/07/13 01:52
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- その他(パソコン・周辺機器) アイ・オー・データ ビデオキャプチャー GV-USB2で録画できない 0 2023/01/09 14:57
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
DoEvents
-
VBA、UserFormを前面に出力して...
-
VB.NETのUsingキーワードの使い方
-
sprintf()の使用方法
-
メッセージボックスのボタン名変更
-
「VBでExcel上PictureBoxダブル...
-
VBSで応答不要のメッセージボッ...
-
スタティックテキストが表示さ...
-
ASP VBScriptでスクリプト実行...
-
C# 何かキーを押すとことで処理...
-
ファイヤーフォックスのブラウザ
-
C言語で計算機をつくりたい
-
Loopとフリーズ
-
エクセルVBAでクリップボード内...
-
FPS制御について
-
サスペンド(休止やスタンバイ...
-
ACCESS側からEXCELの書式を設定...
-
VBSの処理中一旦処理を止めて再...
-
【C#】 あるイベントから別イ...
-
VCでウエイトをミリ秒でかけ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBSの処理中一旦処理を止めて再...
-
メッセージボックスのボタン名変更
-
VBA kernel32 の意味
-
ACCESS側からEXCELの書式を設定...
-
Application.ScreenUpdating=Fa...
-
Excel VBA で処理中断(DoEvents...
-
エクセルVBAでクリップボード内...
-
VBSで応答不要のメッセージボッ...
-
VBA、UserFormを前面に出力して...
-
【C#】 あるイベントから別イ...
-
【MFC】イベントの無効化について
-
「キャンセル」ボタン付きの処...
-
シャットダウン時のExcel強制終...
-
MFCのワーカースレッドとUIスレ...
-
Excel VBA 実行中に一瞬フリー...
-
Excel(VBA)シート上のコマンド...
-
VB.NETで数秒間msgboxの...
-
サスペンド(休止やスタンバイ...
-
ループを使わずに、特定時間に...
-
起動後直に実行するコードはど...
おすすめ情報