[[20220106130636]] 『マクロを使用したダイアログでの文言について』(夜更かし) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『マクロを使用したダイアログでの文言について』(夜更かし)

マクロのダイアログにて
下記の様なマクロをネットを見つけました。
そこで、「Case vbYes」の「はい」という文言を別の言葉に変える事はできますか?
同様に「Case vbNo」や「Case Else」も

別というのは、自分で文言を付ける形です。

例えば、「はい」→印刷などに

Sub test1()

    Selection.ClearContents
    ans = MsgBox("実行しますか?", vbYesNoCancel + vbExclamation, "処理の実行")
    Select Case ans
        Case vbYes
            Macro1
        Case vbNo
            Macro2
        Case Else
            Macro3
    End Select
End Sub

Macro1・Macro2・Macro3は例になります。

< 使用 Excel:unknown、使用 OS:unknown >


 こちらもGoogleスプレッドシートでの話なのだろうか?
(ねむねむ) 2022/01/06(木) 14:01

ご参考。

https://www.google.com/search?q=vba+msgbox+%E3%83%9C%E3%82%BF%E3%83%B3+%E4%BB%BB%E6%84%8F

(ひまつぶし) 2022/01/06(木) 14:08


下記のサイトで名前を変えるマクロを見つけたのですがhttps://kamocyc.hatenablog.com/entry/2019/12/10/124703

SUBまたはFUNCTIONが定義されていません
とエラーになります...

これは記述が間違えているのでしょうか?
(夜更かし) 2022/01/07(金) 13:18


その記事にリンクがある
Create Custom Button Labels for a VBA MsgBox - wellsr.com
から、必要なコードを転記していますか?
WindowsAPIを使ったものです。

一般ユーザーには内容も理解しにくく、
エラー対応などで手に負えなくなる可能性も考えると、
どうしてもということなら、ユーザーフォームを作成するのがお薦めでしょう。

(γ) 2022/01/07(金) 13:33


ユーザーフォームで作成してみたのですが…
エクセルを起動時した時に起動する様に
Private Sub Workbook_Open()
 UserForm1.Show (vbModeless)
End Sub
上記の様にしました。
この時は良いのですが間違えて右上の×で消した際にマクロで表示する様にしたのですが
そうするとボタンが表示されている最中はエクセルに入力ができない状態になります。

これはどの様に解除するのでしょうか?
(夜更かし) 2022/01/07(金) 14:17


また、ユーザーフォームってマクロのボタンの様にA5セルに表示させるの様な位置の固定はできないのでしょうか?

ど真ん中・画面自体の左上・画面自体のTOPとLEFTしか選べないのでしょうか?

(夜更かし) 2022/01/07(金) 14:31


>ユーザーフォームってマクロのボタンの様にA5セルに表示させるの様な位置の固定はできないのでしょうか?

それなら、ボタンを使えばいいのでは?

(ひまつぶし) 2022/01/07(金) 15:02


マクロだとダイアログの文言を別の言葉に変える事ができないようなので
ユーザーフォームにて試したのですが…

(夜更かし) 2022/01/07(金) 15:22


MsgBoxの代わりにユーザーフォームを使いたいのなら、
表示位置を固定したり、表示中にエクセル入力したりする必要があるとは思えません。

(ひまつぶし) 2022/01/07(金) 15:31


>間違えて右上の×で消した際にマクロで表示する様にしたのですが
>そうするとボタンが表示されている最中はエクセルに入力ができない状態になります。
>これはどの様に解除するのでしょうか?

残念ながら、何がどうなのか分かりません。

>間違えて右上の×で消した際
UserForm?、ブック?

>マクロで表示する様にしたのですが
何で表示?MsgBox?

>ボタンが表示〜エクセルに入力ができない〜どの様に解除〜
さっぱり分かりません。

>A5セルに表示させるの様な位置の固定
WinAPIで可能でした。
検索すれば出てきますよ。
(tkit) 2022/01/07(金) 15:32


参考になれば。

https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12255039317
(変なおやじ) 2022/01/07(金) 16:06


>間違えて右上の×で消した際にマクロで表示する様にしたのですが
>そうするとボタンが表示されている最中はエクセルに入力ができない状態になります。
>これはどの様に解除するのでしょうか?

エクセルを起動した際にユーザーフォームを自動起動にすると
エクセルに入力ができる状態になっています。

しかし、間違えて右上の×でユーザーフォーム閉じた場合
マクロを使用して起動するとエクセルに直接入力ができない状態になります

>マクロで表示する様にしたのですが
何で表示?MsgBox?
ユーザーフォーム閉じた場合の処置として
(夜更かし) 2022/01/07(金) 16:37


>マクロを使用して起動するとエクセルに直接入力ができない状態になります
単純にモーダルで起動しているから、とか。
(tkit) 2022/01/07(金) 16:42

モーダルについては、見落としてました。
ありがとうございます。
(夜更かし) 2022/01/07(金) 17:54

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.