- 締切済み
セルの位置を表示するには?
Dim r As Range Set r = Application.InputBox(Prompt:="セルを選択", Type:=8) ここで得た答えを何行目、何列目とMsgboxを用いて表示したいです。ただ何列目は英字で表現したいのですが。よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
みんなの回答
- imogasi
- ベストアンサー率27% (4737/17069)
>何行目、何列目 セル範囲も指定できるのに、何を考えているの。 ーー Sub test02() Dim r As Range Set r = Application.InputBox(Prompt:="セルを選択", Type:=8) MsgBox r.Column MsgBox r.Column + r.Columns.Count - 1 MsgBox r.Row MsgBox r.Row + r.Rows.Count - 1 End Sub ーー >何列目は英字で表現したいのですが 結構面倒。 素人に見せる以外は、数形式もVBAでは便利ですが。 関数を使うか、Address文字列から採るか。
- zap35
- ベストアンサー率44% (1383/3079)
意味がよく分かりませんが、こういうことですか? Sub Macro5() Dim r As Range Set r = Application.InputBox(Prompt:="セルを選択", Type:=8) adr = r.Address(1, 0) MsgBox Right(adr, InStrRev(adr, "$") - 1) & "行 " & _ Left(adr, InStr(adr, "$") - 1) & "列" End Sub
- marbin
- ベストアンサー率27% (636/2290)
- marbin
- ベストアンサー率27% (636/2290)
質問の意味を取り違えていました。 ↓ではいかがでしょう? Dim r As Range Dim sp As Variant Set r = Application.InputBox(Prompt:="セルを選択", Type:=8) sp = Split(r.Address, "$") MsgBox r.Row & vbCrLf & sp(UBound(sp) - 1)
- marbin
- ベストアンサー率27% (636/2290)
英語力がないのでMsgBox表示は分かりません。 Dim r As Range Set r = Application.InputBox(Prompt:="セルを選択", Type:=8) Application.Speech.Speak r.Row Application.Speech.Speak r.Column