| 
    
     |  | ▼りん さん: 
 >>
 >>>   If .MergeCells = True Then
 >>↑の参照だとエラーにならないんですね。 メモメモ・・。
 >>wk=.MergeCells は、結合セルと非結合セルを一緒に選択すると
 >>エラーになったのでon Error 〜にしましたが・・・。
 
 > NullはBooleanではないのでwkに代入するところでエラーになってました。
 >(同時に選択するとTrueでもFalseでもないNullが返る)
 そうですねえ、私も確認しました。
 
 >Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 >  Dim wk As Variant ’何でも来い型
 >  With Target
 >   wk = .MergeCells
 >   '4つに分岐
 >   If TypeName(wk) = "Null" Then
 >     res$ = "結合セルを含む複数セル範囲"
 >   Else
 >     If wk = True Then
 >      res$ = "結合セル範囲"
 >     Else
 >      If .Cells.Count = 1 Then
 >        res$ = "単一セル"
 >      Else
 >        res$ = "複数セル"
 >      End If
 >     End If
 >   End If
 >   MsgBox res$, vbInformation, .Address(False, False)
 >  End With
 >End Sub
 選択範囲の種類を厳密に限定するとなると、個々の範囲での処理も考えると
 やっぱりFunctionにしておいてもよいかもしれませんね
 りんさんのコードをFunctionにして、プールしておきました。
 ありがとうございました。
 
 
 |  |