こんばんは
VBAの勉強をはじめたばかりの素人です。
いろいろ調べたのですが自分の学習不足もあってかなかなか
回答に結びつかなかったので質問させてください。
シートの("A:A")をダブルクリックしたらフォーム1を表示する
シートの("B:B")をダブルクリックしたらフォーム2を表示する
シートの("C:C")をダブルクリックしたらフォーム3を表示する
といった簡単なイベントなのですがうまくできません。
'-----------------------------------------------
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If ActiveCell.Address = ("A:A") Then
1.Show
ElseIf ActiveCell.Address = ("B:B") Then
2.Show
ElseIf ActiveCell.Address = ("C:C") Then
3.Show
End If
End Sub
'-----------------------------------------------
又は
'-----------------------------------------------
Private Sub Workbook_Open()
ActiveWorkbook.Worksheets("Sheet1").OnDoubleClick = "Test"
End Sub
Public Sub Test()
A列 = 1
B列 = 2
C列 = 3
現在位置列 = ActiveCell.Column
現在位置行 = ActiveCell.Row
Select Case ActiveCell.Address
Case 現在位置列 = A列
1.Show
Case 現在位置列 = B列
2.Show
Case 現在位置列 = C列
3.Show
End Select
End Sub
'-----------------------------------------------
などがが今の私ができる最大限の内容ですが、全く違うようです。
素人質問で大変申し訳ありません。
勘違いが多々あるかもしれませんが教えてください。
以上宜しくお願いいたします。
No.1ベストアンサー
- 回答日時:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Range("a:a"), Target) Is Nothing Then
UserForm1.Show
End If
If Not Intersect(Range("b:b"), Target) Is Nothing Then
UserForm2.Show
End If
If Not Intersect(Range("c:c"), Target) Is Nothing Then
UserForm3.Show
End If
End Sub
でどうでしょうか。
早速の回答ありがとうございました。
If Intersect(Target, Range("A:A")) Is Nothing Then
の方法は試したのですが一つの条件でしか実行できなかった為に
あきらめて他の方法を模索していました...............。
(イベントの書き方がおかしかったのかも...勉強不足です)
keirika さんの ”Not Intersect”で見事にできました。
次のステップに進めそうです。
本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) エクセルのVBAでダブルクリックでチェックを入れたあと 1 2022/10/26 20:30
- Visual Basic(VBA) VBAで質問ですが、皆さんはどの様に導き出しているのでしょうか? 6 2022/05/03 21:53
- Visual Basic(VBA) Excelにて、シート1の行を削除するとシート2のシート1と同じ番号の行も削除したい 3 2022/05/08 04:24
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) エクセル VBAについて 2 2022/05/16 16:33
- Visual Basic(VBA) 【変更】ファイルを閉じてダイアログで保存した時、更新したシートだけの処理の実行をする 5 2022/03/26 18:31
- Visual Basic(VBA) エクセルVBA ダブルクリックしたら色反転を指定したセルのみにしたい 2 2022/04/06 12:52
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
エクセル ダブルクリック入力の範囲が複数の場合
Excel(エクセル)
-
複数条件でのダブルクリック
Excel(エクセル)
-
同じシート内にイベントプロシージャが二つある時
Excel(エクセル)
-
-
4
エクセルマクロ セルをクリックするたびに記号を入力
Excel(エクセル)
-
5
マクロを複数シートに実行するには?
Excel(エクセル)
-
6
VBA ダブルクリックするたびにセルの色が順番に変わる
Excel(エクセル)
-
7
Excel VBA ダブルクリックで入力 複数まとめる
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelで、あるセルの値に応じて...
-
VBAでのリスト不一致抽出について
-
Worksheets メソッドは失敗しま...
-
VBAで指定範囲内の空白セルを左...
-
rowsとcolsの意味
-
空白セルをとばして転記
-
VBA 何かしら文字が入っていたら
-
IIF関数の使い方
-
数字が「0」の列を削除するた...
-
URLのリンク切れをマクロを使っ...
-
データグリッドビューの一番最...
-
VBAで、特定の文字より後を削除...
-
エクセルVBA シートモジュール...
-
ExcelVBAでテキストルーレット...
-
B列の最終行までA列をオート...
-
VBAで別のブックの値をVlookup...
-
Excel(M365) Vlookup/セル反転(...
-
ファイルをフォルダに自動振り...
-
VBマクロ 色の付いたセルを...
-
Cellsのかっこの中はどっちが行...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Worksheets メソッドは失敗しま...
-
Excelで、あるセルの値に応じて...
-
B列の最終行までA列をオート...
-
vba 2つの条件が一致したら...
-
Cellsのかっこの中はどっちが行...
-
マクロ 最終列をコピーして最終...
-
VBAを使って検索したセルをコピ...
-
データグリッドビューの一番最...
-
URLのリンク切れをマクロを使っ...
-
VBAのFind関数で結合セルを検索...
-
【VBA】2つのシートの値を比較...
-
文字列の結合を空白行まで実行
-
IIF関数の使い方
-
Excel(M365) Vlookup/セル反転(...
-
VBA指定行削除
-
VBAでのリスト不一致抽出について
-
C# dataGridViewの値だけクリア
-
Changeイベントでの複数セルの...
-
VBAで、特定の文字より後を削除...
-
rowsとcolsの意味
おすすめ情報