Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


3804 / 13645 ツリー ←次へ | 前へ→

【60110】コントロールラベルに2種類のイベント ミスターミスター 09/1/27(火) 22:31 質問[未読]
【60112】Re:コントロールラベルに2種類のイベント 横入り 09/1/27(火) 23:10 発言[未読]
【60113】Re:コントロールラベルに2種類のイベント ミスターミスター 09/1/27(火) 23:28 質問[未読]
【60117】Re:コントロールラベルに2種類のイベント 横入り 09/1/28(水) 5:23 発言[未読]
【60118】Re:コントロールラベルに2種類のイベント ichinose 09/1/28(水) 6:06 発言[未読]

【60110】コントロールラベルに2種類のイベント
質問  ミスターミスター  - 09/1/27(火) 22:31 -

引用なし
パスワード
   こんばんは。ユーザーフォーム上に作成したラベルに2種類のイベントを持たせたいのですがそれがかなわずにいます。一つをClickにすると、もうひとつを例えばMouseDown、MouseUp、MouseMove いずれかにすると、こちら3種類が優先されて、Clickイベントが使えなくなってしまい、DblClickだと、Clickが優先されて、DblClickが使えなくなってしまいます。何かいい方法はないでしょうか?

【60112】Re:コントロールラベルに2種類のイベント
発言  横入り  - 09/1/27(火) 23:10 -

引用なし
パスワード
   ▼ミスターミスター さん:
つかぬことをうかがいますが、ラベルに2種類の処理をさせたいそうですが、
たとえばどんな処理なんでしょうか?
ラベルはもともと表示することが主たる機能ですから、それに2種類もの
イベント処理を加えることが少し不思議な気がします。
場合によってはコマンドボタンとか別のコントロールのほうがふさわしいのでは
ないかと思いますが。

【60113】Re:コントロールラベルに2種類のイベント
質問  ミスターミスター  - 09/1/27(火) 23:28 -

引用なし
パスワード
   ▼横入り さん:
そのラベルのイベントを利用して、他のシートにリンクさせるのが目的です。ひとつはシート1に、もう一つはシート2にといった具合にです。そこで2種類のイベントが必要になったわけです。ユーザーフォーム上に大量のラベルを作成した後のこの用事が生じたので、今更他のコントロールに作りかえるのが面倒なので、このラベルでどうにかできないかと思ったのです

【60117】Re:コントロールラベルに2種類のイベント
発言  横入り  - 09/1/28(水) 5:23 -

引用なし
パスワード
   申し訳ないが、それは仕様が破綻していると思います。
仮に二つ使えたとして、どちらのシートにリンクするかを、ユーザーは
予測できない、覚えきれない。
シートの上のリンクだって、ふたつリンク先があるなんていうのは普通ない。
再考したほうが良いと思います。
予測なんかできなくてもいいから、どうしても二つの選択肢ということなら、
第一リンク先選択、第二リンク先選択といったオプションボタンでも追加しては
どうですか?

【60118】Re:コントロールラベルに2種類のイベント
発言  ichinose  - 09/1/28(水) 6:06 -

引用なし
パスワード
   おはようございます。

>そのラベルのイベントを利用して、他のシートにリンクさせるのが目的です。ひとつはシート1に、もう一つはシート2にといった具合にです。そこで2種類のイベントが必要になったわけです。ユーザーフォーム上に大量のラベルを作成した後のこの用事が生じたので、今更他のコントロールに作りかえるのが面倒なので、このラベルでどうにかできないかと思ったのです

ラベルの左クリックと右クリック(MouseDownイベント)で処理を分ける方法は?

Private Sub Label1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
  Const 左 = 1
  Const 右 = 2
  If Button = 左 Then
   MsgBox "左クリックの処理"
  ElseIf Button = 右 Then
   MsgBox "右クリックの処理"
  End If
End Sub

3804 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free