- ベストアンサー
EXCELのVBAで2行を選択。
EXCELのVBAで2行を選択するには ROW("1:2").selectでいいと思うんですが、 X行からY行まで選択にしようと思えばどうしたらいいですか? ROW("X:Y")だとエラーになって出来ないみたいです。 なんかいい方法ありますか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんな方法もあります。 Dim x As Long, y As Long x = 10: y = 20 Rows(x & ":" & y).Select
その他の回答 (1)
- imogasi
- ベストアンサー率27% (4737/17069)
回答No.2
VBAの、むしろプログラム一般の鉄則は、記号で表される変数は(数学の方程式の未知数x、yと違って、)その行が実行されるまでに、具体的に数値や文字列が変数に代入されていることが必要です。さらに数値でも0はダメとか、マイナスはダメとか、ある値以下でないとダメとかがあります。 また悩ましいことに、一部の言語の仕様で記号による表現 ではエラーになる(定数で書きこまないとダメな)ケースを経験したことがあります。VBAの例では思い出しませんが。 dim x as Long x=3 a = "sheet" & x Sheets(a).Select はOK。またx=1:y=3 Sheets(Array("sheet" & x, "sheet" & y)).Select はok。しかし a = Chr(34) & "sheet" & x & Chr(34) & "," & Chr(34) & "sheet" & y & Chr(34) msgbox a Sheets(Array(a)).Select はエラー。
お礼
ありがとうございました。 このやり方でうまく行きました。 ちょっとした工夫をしないと出来ないもんですな~。