人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

エクセル VBAについての質問です。ある Range(矩形の場合)のrow,column の上限、下限を簡単に取得する方法はないでしょうか?
end(xlUp)などは、range の外までチェックするようです。単純に、4つの隅のrow,column プロパティをしりたいだけなんですが、
簡単な方法はないでしょうか?

●質問者: kaiketsu
●カテゴリ:コンピュータ
✍キーワード:VBA しり エクセル プロパティ
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● SALINGER
●27ポイント ベストアンサー

範囲が決まっているのならば、4隅は次のようになります。

Sub test()
 Dim r As Range
 Set r = Range("C5:D6")
 
 Debug.Print r.Row & "," & r.Column  '左上
 Debug.Print r.Row & "," & r.Column + r.Columns.Count - 1  '右上
 Debug.Print r.Row + r.Rows.Count - 1 & "," & r.Column  '左下
 Debug.Print r.Row + r.Rows.Count - 1 & "," & r.Column + r.Columns.Count - 1 '右下
End Sub

http://q.hatena.ne.jp/

◎質問者からの返答

ちょっとは面倒なんですね。


2 ● GreenStar
●27ポイント
Dim a As Range
Set a = Range("B2:D50")
Debug.Print a.Column, a.Row
Debug.Print a.Column + a.Columns.Count - 1, a.Row
Debug.Print a.Column , a.Row + a.Rows.Count - 1
Debug.Print a.Column + a.Columns.Count - 1, a.Row + a.Rows.Count - 1

http://t_shun.at.infoseek.co.jp/My_Page/Excel-VBA/vba_page5.htm


3 ● HALSPECIAL
●26ポイント

こんな感じでしょうか

'左上隅
Debug.Print Range(矩形の場合).Row
Debug.Print Range(矩形の場合).Column

'右上隅
Debug.Print Range(矩形の場合).Row
Debug.Print Range(矩形の場合).Column + Range(矩形の場合).Columns.Count - 1

'左下隅
Debug.Print Range(矩形の場合).Row + Range(矩形の場合).Rows.Count - 1
Debug.Print Range(矩形の場合).Column

'右下隅
Debug.Print Range(矩形の場合).Row + Range(矩形の場合).Rows.Count - 1
Debug.Print Range(矩形の場合).Column + Range(矩形の場合).Columns.Count - 1

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ