No.4ベストアンサー
- 回答日時:
#3さんのおっしゃるように、MouseMoveイベントを使う方法があります。
ボタンの上にテキストボックスを置きます。
ボタンのMouseMoveイベントでテキストボックスのVisibleプロパティ を True にします。
ボタンの下に、ボタンより一回り大きなイメージコントロールなどを置いて、そのコントロールのMouseMoveイベントで、テキストボックスの Visible を Falseにします。
イメージコントロールのBachStyleプロパティとBorderStyleで、イメージコントロールを透明にできます。
ご回答ありがとうございます。
下にもうひとつのイメージを置くなんて考えつきませんでした!
かなりイメージしているものに近いものができました!
ただ、CommandButton1.MousePointer = fmMousePointerArrow
という設定をしていても、マウスの形が砂時計と矢印を行き来していて、だいぶチラつくのですが、
他に違うやり方などがありますでしょうか?
どうぞよろしくお願いします。
No.8
- 回答日時:
#7です。
失礼しました、訂正です。> テキストボックスは、"図形描画"のものを使うことをお勧めします、最初に書いておけばよかったですね。
"図形描画"ではなくて、コントロールツールボックスの"ラベル"ですね。
ラベルは文字の大きさや位置などに制約がありますが、プロパティを工夫すればけっこう使えると思います。
No.7
- 回答日時:
#4です。
> マウスの形が砂時計と矢印を行き来していて、だいぶチラつくのですが、
こちらでもテストしていますが、マウスポインターのちらつきは見られませんでした。ただ、マウスをすばやく動かすとイベントが発生しないようで、テキストボックスが消えないことがありますが。(^_^;)
もしかするとテキストボックスは、コントロールツールボックスのテキストボックスを使っていらっしゃるでしょうか。そうだと、テキストボックスの上にポインターが乗ると、勝手に文字入力用に形が変わってしまいますね。テキストボックスは、"図形描画"のものを使うことをお勧めします、最初に書いておけばよかったですね。
ご回答どうもありがとうございます。
テキストボックスはコントロールツールのものを使っていました…(~_~;)
図形描画のテキストボックスを使うとうまくいきました。
> マウスをすばやく動かすとイベントが発生しない
たぶん、そんなに早くマウスを動かして操作する人がいませんので大丈夫です!
長い間どうもありがとうございました。
またわからないことがありましたら、よろしくお願いいたします。
No.6
- 回答日時:
#3ですが、いや~、昨日お風呂で思いついたんですが#4さんにもう書かれてました。
MouseMoveでなにか別のテキストボックスのキャプションとか、セルの値とかを表示させたいコメントにして、LostFocusぐらいでコメント非表示っていうのでどうでしょうかね。
それでもイメージとは違うとは思いますけど。
ご回答ありがとうございます。
ボタンとイメージのあるセルに最初にコメントを入れておいて、
Mousemoveで、コメント表示/非表示を切り替えるといいんですね。
Private Sub CommandButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Range("F11").Comment.Visible = True
End Sub
Private Sub Image1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
Range("F11").Comment.Visible = False
End Sub
こんな感じになりました。ありがとうございます!
No.5
- 回答日時:
#4です、ちょっと補足を。
> ボタンの下に、ボタンより一回り大きなイメージコントロール
「ボタンの下に」とは、イメージを右クリック、"順序"で、ボタンの背面に移動させるという意味です。
No.3
- 回答日時:
いま見たら
mousemove
がおっしゃってるパターンじゃないですか?
Private Sub CommandButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
MsgBox ("test")
End Sub
ただこれは完成イメージとはちょっと違いますね。
ご回答ありがとうございます。
Mousemoveはやってみたのですが、Msgboxやユーザーフォームだと作業が止まってしまい、テキストボックスなどはロードできないと言われてしまいました…。
No.2
- 回答日時:
クリックせずにフォーカスさせるには土台になるユーザーフォーム上にボタンを配置してやり、「Tab」キーでフォーカスを移していく必要があるのでしょうね。
この辺りがVBAとVBの違い(ボタンがウインドウか単なるコントロールかという)かもしれませんので、ネットでよく探してみてください。
ご回答どうもありがとうございます。
やはりTabキーでフォーカスしようとすると、ユーザーフォーム上で配置しなければいけないのですね。
エクセルのバージョンが97ですので、
ユーザーフォーム.Show vbModeless
という手が使えず、ボタンを常に表示しておく必要もありますので、ボタンをシート上に配置しているのですが、
なかなかむずかしいですね…。
No.1
- 回答日時:
CommandButton1_GotFocus()
でどうですか。
VBAを使ってらっしゃるようですので
Private Sub CommandButton1_Click()
のソースのどこかにポインタを置いて、ウインドウの
「Click↓」となってるところの「↓」を押すと関数が出来ると思いますよ。
この「↓」を押して出てくる以外のイベントはコマンドボタンオブジェクトにはありませんのでできませんが、逆にコマンドボタンにはこれだけのイベントがあるのだなぁ、と、他のオブジェクトを見るときにも見てみて。
早速のアドバイスどうもありがとうございます。
GotFocus ではどうしたらクリックせずにフォーカスできるのかちょっとわかりませんでした。
Click↓内の、BeforeDrugOver から MouseUp までとりあえず試してみたのですが、どれもマウスをのせただけというわけにはいかないのですね…。
OnMouse みたいなのがあるかと思ったのですが…。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Visual Basic(VBA) 【ExcelVBA】動的にボタン、ボタン名を生成できますか? 7 2022/04/08 12:54
- Excel(エクセル) マクロでボタンにつける名前がどこに設定されているかわからないケースがありました。 1 2023/06/19 19:37
- Excel(エクセル) 【Excel】指定のセル内容を基に別シートのセルを検索して選択する【VBA】 1 2022/06/16 16:16
- Excel(エクセル) excelvbaでスライドショーを作りたい 2 2023/04/20 14:32
- その他(Microsoft Office) windows10で作業を終了する際の「保存しますか はい いいえ」を表示させずに自動で保存する方法 6 2023/03/15 11:29
- Excel(エクセル) エクセルのマクロ設定 1 2023/04/05 19:37
- Excel(エクセル) 【マクロ】ボタンを押すごとに、A1セル、A2セル、A3セルに日付を入力 3 2023/01/25 00:12
- Visual Basic(VBA) VBA 画面上のカーソルに文字数字を入力するコードを教えて下さい 1 2022/10/30 10:31
- Excel(エクセル) [貼り付けオプション]とは? 3 2022/04/17 08:15
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
Excelで、ボタンにコメントをつけたい。
Excel(エクセル)
-
セルにカーソルを合わせると文字を表示させるVBA
Excel(エクセル)
-
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
-
4
エクセルの画像にツールチップを表示させたい
Visual Basic(VBA)
-
5
excel、画像にカーソルを合わせるとタイトル・説明が表示されるようにするには?
Excel(エクセル)
-
6
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
7
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
8
Excelのシート上のShapeにイベントは設定できる?
Excel(エクセル)
-
9
VBA エンターキーでイベントに入りたい。
PowerPoint(パワーポイント)
-
10
エクセルでセルにポインタすると表示されるコメントみたいなもの
Excel(エクセル)
-
11
ExcelVBAのユーザーフォームの中に線を引きたい
Visual Basic(VBA)
-
12
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
13
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
14
ControlTipTextの書式設定(Font.Size等)の変更
Visual Basic(VBA)
-
15
VBAのTextBoxに半角数字のみ入力したい
Visual Basic(VBA)
-
16
VBAでユーザーフォームの表示を確認
Visual Basic(VBA)
-
17
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
18
エクセルVBAでUserFormを起動した時
Excel(エクセル)
-
19
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
20
エクセルVBAで、MsgBox やInputBox は、画面の中央以外に表示させたい。
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
Excel VBA Application.caller...
-
コマンドボタンやイメージにマ...
-
Vba 電卓 一文字消すボタン
-
VBA CommandButtonの文字ずれ
-
VBAで多数のプログラムを一つの...
-
アクセスカウンタでリロード時...
-
TextBoxでEnterキーを押すと、...
-
ユーザーフォームに別シートか...
-
セルをマクロのボタンにしたい。
-
MFC - ボタンの処理について
-
ボタン(コントロール)を丸くしたい
-
Access VBA でデータペーストを...
-
uwscとWinShotを使いスクリーン...
-
チェックボックスで指定出来る...
-
VBA MsgBoxで、”いいえ(No)”ボ...
-
回数のカウント
-
Showメソッド
-
他のアプリケーションとの連携
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
フォームの再読み込み
-
ユーザーフォームに別シートか...
-
VBA CommandButtonの文字ずれ
-
セルをマクロのボタンにしたい。
-
コマンドボタンやイメージにマ...
-
Excel VBA Application.caller...
-
VBAのボタンの位置が変わって困...
-
Access VBA でデータペーストを...
-
プロシージャからイベントをコ...
-
他のアプリケーションとの連携
-
閉じると「+」になり開くと「-...
-
C#で動的に作ったtextboxを消す。
-
ボタンをマウスで押し続けたと...
-
VBA でのボタンの移動について
-
CommandButtonのCaptionを変化...
-
ボタン
-
TextBoxでEnterキーを押すと、...
-
VB.net でトグルボタンを実現し...
おすすめ情報