• ベストアンサー

Range表現

excel Range(”A3:F5”).Select 以下範囲に罫線を引く ここで 変数:値 s1:3 s2:5 s3:1 ‘Aを意味 s4:6  ‘Fを意味 する。s1からs4までの変数を使って Range(”A3:F5”).Select 同等の意味を表現するには、どうすればいいですか。

質問者が選んだベストアンサー

  • ベストアンサー
  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.2

R1C1参照形式を使用すればいいでしょう。 行も列も、1,2,3,・・・の番号で指定するのです。 Range(”A3:F5”).Select →Range(cells(3,1),cells(5,6)).Select A1形式とは行と列の指定の順序が逆になります。 Range(cells(3,s3),cells(5,s2)).Select r1=3 r2=5 Range(cells(r1,s3),cells(r2,s2)).Select みんな同じです。

taktta
質問者

お礼

おかげで解決、ご回答どうもありがとうございました。

その他の回答 (2)

  • FEX2053
  • ベストアンサー率37% (7991/21371)
回答No.3

もう1つの解法、""の中は文字列ならオッケーなんです。 Chr(s3+64) とすれば、1~26に該当するアルファベットが出てきます から、例えばこんな感じですね。 R_chr = Chr(s1+64) & CStr(s1) & ":" & Chr(s2+64) & CStr(s4) こうすれば R_chr 変数に"A3:F5"が得られます。後は Range(R_chr).Select でおしまいです。当然変数 R_chrなんぞ使わずに、そのまま式を Rangeの()内に書いても動作します。

taktta
質問者

お礼

rangeを使う場合について詳しい説明を伺いありがとうございました。 (なお簡単と思われるため、自分では以下の人の方法で対応しようと思いました。)

  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

>Range(”A3:F5”).Select ならば、 Range(Cells(3, 1), Cells(5, 6)).Select が同等になります。 変数を使うと・・・ Range(Cells(s1, s3), Cells(s2, s4)).Select

taktta
質問者

お礼

おかげで解決、ご回答どうもありがとうございました。

関連するQ&A