■ 最新の投稿

セルA1:E8を選んだらメッセージ!Intersect活用ワザ

Excel VBA には Intersect という便利な関数があります。

これは「2つ以上の範囲の交差部分を返す」仕組みで、範囲が重なっていなければ Nothing を返します。
今回はこの Intersect を使って、ユーザーが選択した範囲が A1:E8 に含まれるかどうかを判定するマクロ を紹介します。

コード例

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Target, Me.Range("A1:E8")) Is Nothing Then
        MsgBox "範囲内"
    End If
End Sub

コード解説:

Worksheet_SelectionChange … シート上でセル選択が変わったときに自動実行されるイベント。

Target … ユーザーが新たに選択したセル範囲。

Intersect(Target, Me.Range("A1:E8")) … Target と A1:E8 の交差部分を取得。

Nothing でなければ、つまり「交差あり=範囲内」ということ。

👉 実行すると、ユーザーが A1:E8 の中を選んだ瞬間に 「範囲内」 とメッセージが表示されます。


Comments

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です