[[20190220091232]] 『マクロで指定範囲外にセルがある場合はエラー表示』(マイン) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『マクロで指定範囲外にセルがある場合はエラー表示』(マイン)

いつもお世話になっております。

ListBoxにデータを読み込んでアクティブセルに値を転記するコードを作成しています。

※但し、転記したいセルが、指定範囲外に値がある場合は処理をストップさせる

下記コードで、指定範囲外にアクティブセルがある場合に処理をストップさせるためのコードを作成しましたが、指定範囲が2箇所ある場合の処理方法がわからず質問させていただきました。

(現在のコードです)

Sub ListBox2_DblClick(ByVal Cancel As MSForms.ReturnBoolean)

    AppActivate Application.Caption    'フォーカスをセルに移す(カーソル操作可能)
'★上段と下段以外はエラー処理
    Dim 上段 As Range
    Dim 下段 As Range
    '★処理範囲の設定_上段
    Set 上段 = Intersect(ActiveCell, Range(Cells(6, 2), Cells(6, 17)))
    Set 下段 = Intersect(ActiveCell, Range(Cells(28, 2), Cells(28, 17)))
    If 上段 Is Nothing Then
        MsgBox "入力範囲外です"
        'Exit Sub
    End If
    '★処理範囲の設定_下段
    If 下段 Is Nothing Then
        MsgBox "入力範囲外です"
        'Exit Sub
    End If
    'アクティブセルが範囲外にあるか判定
    If ActiveCell = 上段 Or 下段 Then
        '範囲外
        Exit Sub
        '範囲内であれば処理
    Else
        'セル入力
        With ActiveCell
            .Value = Me.ListBox2.Value    'アクティブセルに値転記
            .Offset(0, 1).Select    '隣のセルを選択
        End With
    End If
End Sub

< 使用 Excel:Excel2016、使用 OS:Windows10 >


 >Set 下段 = Intersect(ActiveCell, Range(Cells(28, 2), Cells(28, 17)))
 より下は
    If 上段 Is Nothing And 下段 Is Nothing Then
        MsgBox "入力範囲外です"
        Exit Sub
        '範囲内であれば処理
    End If
        'セル入力
    With ActiveCell
        .Value = Me.ListBox2.Value    'アクティブセルに値転記
        .Offset(0, 1).Select    '隣のセルを選択
    End With
 ではどうか?
(ねむねむ) 2019/02/20(水) 09:23

いっそまとめて1回で判定しても良いのでは?
 Sub ListBox2_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    AppActivate Application.Caption

    If Intersect(ActiveCell, Range("B6:Q6,B28:Q28")) Is Nothing Then
        MsgBox "入力範囲外です",vbCritical
        'Exit Sub
    Else
        With ActiveCell
            .Value = Me.ListBox2.Value
            .Offset(0, 1).Select
        End With
    End If
 End Sub
(???) 2019/02/20(水) 09:34

ありがとうございます。

・上段 Is Nothing And 下段

・まとめる方法

・・・頭が固くなっていたようです。

試してまたご報告いたします。
(マイン) 2019/02/20(水) 09:54


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.