• ベストアンサー

マクロでセルのセレクト範囲を変更する方法

マクロの記録を使って、部分的に編集して使っています。 以前BASICをやっていたので、若干理解できる部分があります。 教えていただきたいのは、例えば Range("A1").SelectのA列1行目の行の部分を for i =1 to 10 として、1行目から10行目までを順次セレクトする方法を教えてください。 よろしくお願いいたします。

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

  • ベストアンサー
  • moon00
  • ベストアンサー率44% (315/712)
回答No.1

選択するのに、Rangeプロパティではなくて、Cellsプロパティを使います。 Range("A1").SelectはCells(1,1).Selectと書き換えることができます。 Cells(行番号, 列番号)という書き方になるので、行をiで置き換えると Cells(i,1).Select となります。 これをForの中に入れて、iを変化させれば順次選択することができます。

uechan1946
質問者

お礼

moon00 様 回答ありがとうございます。判りやすい内容でたすかります。

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • weboner
  • ベストアンサー率45% (111/244)
回答No.3

For Each~Nextステートメントを利用することも出来ます 例: Sub Macro1() Dim ts As Range For Each ts In Range("A1:A10") ’ココに処理 ’処理例: ts = i i = i + 1 Next End Sub 実行するとA1セルからA10セルまで順に処理が実行されます 範囲指定をRange("A1:B10")と指定した場合は A1⇒B1⇒A2⇒B2⇒・・・・⇒A10⇒B10 と処理が実行されていきます for~nextでセル番地を指定したループよりも感覚的に分かりやすいかと

すると、全ての回答が全文表示されます。
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

現在のコードを生かすならセル番地の部分を以下のように変更します。 Range("A" & i).Select

すると、全ての回答が全文表示されます。

関連するQ&A