Excel VBA質問箱 IV

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

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


5049 / 13644 ツリー ←次へ | 前へ→

【52880】intersectとは にしもり 07/12/7(金) 17:07 質問[未読]
【52883】Re:intersectとは ichinose 07/12/7(金) 18:10 発言[未読]
【52885】Re:intersectとは にしもり 07/12/7(金) 18:34 お礼[未読]

【52880】intersectとは
質問  にしもり  - 07/12/7(金) 17:07 -

引用なし
パスワード
   以前、intersectを利用するのは目的のセルの範囲内に入力したかチェックする為であるとの投稿を読みました。
このintersectは、目的のセルの範囲内をダブルクリックしてるかのチェックをする為に利用することも出来るでしょうか。
抽象的質問ですみませんが、宜しくお願いします。

【52883】Re:intersectとは
発言  ichinose  - 07/12/7(金) 18:10 -

引用なし
パスワード
   ▼にしもり さん:
こんばんは。

>以前、intersectを利用するのは目的のセルの範囲内に入力したかチェックする為である
そのためにあると言うのではなく、そのような利用方法もあると言うことですよね!!

Intersectメソッド機能は、あくまでも
「複数のセル範囲の共有セル範囲を表す Range オブジェクトを返します。」
です(By Help)。


>このintersectは、目的のセルの範囲内をダブルクリックしてるかのチェックをする為に利用することも出来るでしょうか。

可能です。


新規ブックの適当なシート(仮にSheet1としましょう)のモジュールに

'====================================================================
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
  If Not Application.Intersect(Range("a1,b5,c10"), Target) Is Nothing Then
    MsgBox "対象セルがダブルクリックされました" & vbCrLf & Target.Address
    Cancel = True
    End If
End Sub

として当該シートのセルA1,B5,C10をダブルクリックして見てください。

又、その他のセルもダブルクリックして見て上記の3セルのそれとの動作の違いを
確認して見てください。

【52885】Re:intersectとは
お礼  にしもり  - 07/12/7(金) 18:34 -

引用なし
パスワード
   ▼ichinose さん:
こんばんは。

Intersectメソッド機能が、複数のセル範囲の共有セル範囲を表す Range オブジェクトを返すとはそういうことなのですね。
ありがとうございました。

>新規ブックの適当なシート(仮にSheet1としましょう)のモジュールに
>
>'====================================================================
>Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
>  If Not Application.Intersect(Range("a1,b5,c10"), Target) Is Nothing Then
>    MsgBox "対象セルがダブルクリックされました" & vbCrLf & Target.Address
>    Cancel = True
>    End If
>End Sub
>
>として当該シートのセルA1,B5,C10をダブルクリックして見てください。
>
>又、その他のセルもダブルクリックして見て上記の3セルのそれとの動作の違いを
>確認して見てください。

確認してみます。
恐れ入りました。

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