
いつもお世話になります。(バージョン365です。)
msgbox を表示させたまま、シートを上下左右動かしたいのですが、どうすればできますか?
私の環境では、msgbox を表示させたままでは動かせないのです。
タイトル通りですが、マクロを実行中に、処理結果をシートに表示させ、msgbox で「この内容でOK?」と表示させたまま、(処理結果がシートの上下左右に隠れた部分があるので確認のため)シートを上下左右動かしたいのですが、どうすればできますか?よろしくお願いします。
No.6ベストアンサー
- 回答日時:
No.4、No.5です。
>最初r のところでエラー(エラーの内容は覚えていません)が発生し、・・・
大変失礼しました。
Dim r As Intger
が原因です。Integerの「e」が消えています。
投稿するときに何かの拍子にdeleteキーに触れてしまったようです。
前回回答でも
「とりあえず、36の環境をお持ちである」
と投稿してありますが、365の「5」が消えています。
ここも、投稿するときに何かの拍子にdeleteキーに触れてしまったようです。
さて、
>popup を本で調べると、『「Windows Script Host Object Model」への参照設定を
>行う必要があります。』と記載されています。この参照設定はしていない
>(実際チェックボックスに☑はされていません)のですが正常に動いています。
>参照設定しなくとも大丈夫でしょうか?
とのお尋ねですが、以下のURLに解説があります。
https://www.relief.jp/docs/excel-vba-automatical …
参照設定はしてもしなくてもよいというのが結論です。
参照設定していないことを前提にするとCreateObject関数で
Dim WSH As Object
Set WSH = CreateObject("WScript.Shell")
を記述しますが、
参照設定を行って
Dim WSH As IWshRuntimeLibrary.WshShell
Set WSH = New IWshRuntimeLibrary.WshShell
と記述してもよいということになります。
詳しい説明をいただき感謝しています。
r でのエラー、ans に置き換えるとき Integerと何の疑いもなく思い込んで打ち込んでいたようです。
>参照設定はしてもしなくてもよいというのが結論です。
ご提示のURLも読みました。
よく分かりました、ありがとうございました。
No.5
- 回答日時:
No.4です。
popup自体は365以前のバージョンでも問題なく使用できます。
ただし、「Ctrl+Shift+マウススクロール」でマウススクロールが横方向にも対応できると確認できているのは、EXCEL2019と365だけで他のバージョンでも横スクロールできるのか確認がとれていません。
なので、とりあえず、36の環境をお持ちであるということで回答した次第です。
マウススクロールできない場合にスクロールバーをスライドさせるなどの方法をとると、popupがタスクバーに隠れてしまうという問題が起こります。
マウススクロールについては、Microsoft製のマウスを使うとかプラグインをいれるなどの方法もあるようです。
ありがとうございます。№4でお示しいただいたコードを実行しましたところ、最初 r のところでエラー(エラーの内容は覚えていません)が発生し、r を別の例えばansに置き換えたところ正常に作動しました。
本日、昨夜のans を r に戻して実行しましたがエラーは出ませんでした。参考にさせていただきます。
popup を本で調べると、『「Windows Script Host Object Model」への参照設定を行う必要があります。』と記載されています。この参照設定はしていない(実際チェックボックスに☑はされていません)のですが正常に動いています。
参照設定しなくとも大丈夫でしょうか?
もう少しおつきあいしていただけますか?よろしくお願いします。
No.4
- 回答日時:
365の環境ということなので、以下の方法で実現できると思います。
MsgBoxの代わりにPopupを使いますが、使い方はMsgBoxと殆ど変わりません。
サンプルコードは以下のようなものです。
Sub Sample()
Dim WSH As Object
Dim r As Intger
Set WSH = CreateObject("WScript.Shell")
r = WSH.Popup("この内容でOK?", , "MsgBox", vbYesNo)
'rの値で処理を分ける
Set WSH = Nothing
End Sub
Popupが表示されている状況で、マウスによる画面スクロールが可能です。
左右へのスクロールは
Ctrl+Shift+マウススクロールボタン
で実現できます。
ありがとうございます。
Popupですか?初めて知りました。
一度試してみます。
因みに、365以前のバージョンではできないのですか?
No.2
- 回答日時:
こんにちは
>シートをを上下左右動かしたいのですが、どうすればできますか?
ユーザーフォームをMsgbox代わりに表示するだけで良ければ
フォームにラベルを設置して(必要ならボタンも)
vbModelessで表示すればよいだけです。
参考 フォーム作成
https://www.atmarkit.co.jp/ait/articles/1410/20/ …
UserForm1の場合
標準モジュールに(メッセージボックス表示部分)
UserForm1.Show vbModeless
コマンドボタンを設置した場合
フォームモジュールに
Private Sub CommandButton1_Click()
Unload Me
End Sub
RefEdit コントロールを使用する場合
vbModeless は厳禁です。バグる可能性があります
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- Excel(エクセル) エクセルVBA マクロ処理中のポップアップメッセージについて 1 2023/08/04 21:34
- Visual Basic(VBA) エクセルマクロでアニメを作る方法を教えてください。 1 2023/02/07 14:27
- Excel(エクセル) Excelのマクロについて教えてください。 4 2022/05/31 14:07
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2023/05/23 16:28
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Excel(エクセル) エクセルVBA Msgboxでの変数の活用 4 2023/07/23 08:33
- Visual Basic(VBA) エクセルのマクロで対象ごとにシート分けしてその内容をセルに書き込みたい 9 2022/08/24 13:23
このQ&Aを見た人はこんなQ&Aも見ています
-
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
メッセージボックスの非モーダル化について
Visual Basic(VBA)
-
エクセルVBAで、MsgBox やInputBox は、画面の中央以外に表示させたい。
Excel(エクセル)
-
-
4
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
5
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
6
エクセルVBAによりメッセージボックスを表示させた場合について
Excel(エクセル)
-
7
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
8
VBAで一時中断したプログラムの再開をさせたい
Visual Basic(VBA)
-
9
Excel-VBAの「しばらくお待ちください」のダイアログが自動的に閉じない
Excel(エクセル)
-
10
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
11
VBAにて別ワークブック上の実行したマクロのメッセージボックスを操作
Visual Basic(VBA)
-
12
Excel VBAで、ユーザーフォームをモードレス表示している間、処理を止めるには?
Visual Basic(VBA)
-
13
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
14
メッセージボックスを前面に表示させるには?
Visual Basic(VBA)
-
15
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
16
VBAでループ内で使う変数名を可変にできないか。
Visual Basic(VBA)
-
17
コンボボックス内の文字サイズ変更
Excel(エクセル)
-
18
VBA エンターキーでイベントに入りたい。
PowerPoint(パワーポイント)
-
19
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
20
配列で格納したものをmsgboxで表示する方法について
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで、変な矢印がでて、...
-
マクロを実行中に、msgbox を表...
-
Excelのスクロールをスムーズに...
-
ユーザーフォームをホイールで...
-
VBAのリストボックスをマウ...
-
ロジクール マウス SetPointが...
-
左右対称Sサイズマウスについて
-
クリックのストロークが深いマ...
-
エクセルの表が勝手にスクロー...
-
マウスホイール機能はどのボタ...
-
パソコンの矢印キーでスピード...
-
エクセルで突然横にスクロール
-
MS-Wordで、マウスホイールのス...
-
音量バーが勝手に下がるなど挙...
-
XGworks、操作について
-
横スクロールができるエルゴノ...
-
続 マウスを買い換えたい。
-
EXCEL:マウスのホイールで1行...
-
Windows7 マウスのホイールでス...
-
エクセル2016上でマウスをレー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで、変な矢印がでて、...
-
パソコンの矢印キーでスピード...
-
ユーザーフォームをホイールで...
-
エクセルの表が勝手にスクロー...
-
マクロを実行中に、msgbox を表...
-
スクロールバーでは上下異動で...
-
ロジクール マウス SetPointが...
-
Excelのスクロールをスムーズに...
-
エクセルでマウスホイールを使...
-
LogicoolのマウスM557のホイー...
-
エクセルで突然横にスクロール
-
音量バーが勝手に下がるなど挙...
-
MS-Wordで、マウスホイールのス...
-
VBAのリストボックスをマウ...
-
横スクロール用のホイールが搭...
-
インテリマウスエクスプローラ
-
勝手にしたにスクロールされる
-
EXCEL:マウスのホイールで1行...
-
パソコン画面が勝手にスクロー...
-
Outlook 左のフォルダ一覧でマ...
おすすめ情報