09/07/28 10:02:18
Excel2003 XPです。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
で渡されるTargetが連続した複数のセル範囲である場合、行を1行に
変更する処理を行いたいのですが、とりあえず力技で以下のように
しています。
myRange1 = Target.Address
myRange2 = myRange1
If InStr(myRange1, ":") Then
myRange = Split(myRange1, "$")
myRange2 = myRange(1) & myRange(2) & myRange(3) & Left(myRange(2), Len(myRange(2)) - 1)
End If
要は"$"で列行列行に分割して文字列を作り直しているのですが、
何とも見難いのでもっとスマートなコマンドやテクニックは無いでしょうか?
よろしくお願いします。