Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


6685 / 13646 ツリー ←次へ | 前へ→

【43778】セルのアドレス tomo 06/10/25(水) 15:20 質問[未読]
【43779】Re:セルのアドレス Blue 06/10/25(水) 15:29 回答[未読]
【43780】Re:セルのアドレス tomo 06/10/25(水) 15:52 お礼[未読]
【43782】Re:セルのアドレス わさび 06/10/25(水) 16:10 発言[未読]

【43778】セルのアドレス
質問  tomo  - 06/10/25(水) 15:20 -

引用なし
パスワード
   度々利用させて頂いています。
また,質問させていただきます。

やりたいことは,メッセージボックスに
「選択されているのはXXX行目です。」(XXXは任意の数値)
と表示させることです。
コード化すると

Sub test()
Range("D65536").Select
Selection.End(xlUp).Select
n = 〜〜〜
MsgBox "選択されているのは" & n & "行です。"
End sub

Selection.End(xlUp).Select とした時に選択されたセルが何行目かを
取得したいのですが,「〜〜〜」の部分をどうしたらよいのか分かりません。

【43779】Re:セルのアドレス
回答  Blue  - 06/10/25(水) 15:29 -

引用なし
パスワード
   行数を取得するには Rangeオブジェクトの Rowプロパティです。

ちなみに列数は Columnプロパティで、アドレスはAddressプロパティで取得できます。

【43780】Re:セルのアドレス
お礼  tomo  - 06/10/25(水) 15:52 -

引用なし
パスワード
   ▼Blue さん:

Sub test()
Range("D65536").Select
Selection.End(xlUp).Select
n = Selection.Rows.Row
MsgBox "選択されているのは" & n & "行です。"
End Sub

とすることで,問題が解決しました。

質問前に Rows と Addressプロパティを使用して色々試していたんですが,
n = Selection.Rows.Address
とした場合に,「$D$XXX行です。」と表示され困っていました。
Rowプロパティには気付きませんでした。
ありがとうございました。

【43782】Re:セルのアドレス
発言  わさび  - 06/10/25(水) 16:10 -

引用なし
パスワード
   ▼tomo さん:

> Range("D65536").Select
> Selection.End(xlUp).Select
> n = Selection.Rows.Row

この3行は、
n = Range("D65536").End(xlUp).Row
というふうにまとめることができます。

あ、でも、選択された状態ではないので、ご注意ください。

6685 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free