
こんばんは
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で質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelで、あるセルの値に応じて...
-
【VBA】2つのシートの値を比較...
-
Cellsのかっこの中はどっちが行...
-
数字が「0」の列を削除するた...
-
B列の最終行までA列をオート...
-
VBAを使って検索したセルをコピ...
-
Worksheets メソッドは失敗しま...
-
IIF関数の使い方
-
VBAでのリスト不一致抽出について
-
行はそのままで列のみをVBAコー...
-
マクロの行削除の記述の仕方
-
Excel vbaでアクティブなシート...
-
(VBA)条件と一致するセルの背景...
-
オートフィルタをマクロで作成...
-
C# 列の挿入
-
重複データをまとめて合計を合...
-
VBAなのですが、B列にカタカナ...
-
rowsとcolsの意味
-
C# datagridview 列幅の調整
-
vba 2つの条件が一致したら...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Worksheets メソッドは失敗しま...
-
Cellsのかっこの中はどっちが行...
-
vba 2つの条件が一致したら...
-
Excelで、あるセルの値に応じて...
-
B列の最終行までA列をオート...
-
IIF関数の使い方
-
VBAのFind関数で結合セルを検索...
-
Changeイベントでの複数セルの...
-
VBA 何かしら文字が入っていたら
-
【VBA】2つのシートの値を比較...
-
DataGridViewに空白がある場合...
-
VBAで、特定の文字より後を削除...
-
URLのリンク切れをマクロを使っ...
-
エクセル 2つの表の並べ替え
-
VBAコンボボックスで選択した値...
-
VBAを使って検索したセルをコピ...
-
VBAでのリスト不一致抽出について
-
複数csvを横に追加していくマク...
-
C# dataGridViewの値だけクリア
-
データグリッドビューの一番最...
おすすめ情報