• ベストアンサー

エクセルのマクロ

Range("A1") = Range("F1") のような式で 3000行分のセルに対して処理を行いたい場合、 A1からA3000まで上の式を繰り返して書くしかないのでしょうか。 宜しくお願いします。

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

  • ベストアンサー
  • myRange
  • ベストアンサー率71% (339/472)
回答No.2

最終行が3000と決まっている場合  Range("A1:A3000").Value = Range("F1:F3000").Value 最終行が不定の時(3000行と決まってない場合)  Dim LastRow As Long  LastRow = Cells(Rows.Count, "F").End(xlUp).Row  Range("A1:A" & LastRow).Value = Range("F1:F" & LastRow).Value ●Cells(Rows.Count, "F").End(xlUp).Rowで、F列の最終行を取得。 以上です。

graycat222
質問者

お礼

お礼が遅くなり申し訳ありませんでした。 最終行が不定の場合もできるとは思っていなかったので、 データが入るであろう最大の行に対して処理をしようと思っていました。教えていただいて大変助かりました。 本当にありがとうございました。

その他の回答 (1)

  • tadagenji
  • ベストアンサー率23% (508/2193)
回答No.1

いくつかありますが、For ~ next 文を使います。 for I=1 to 3000 実行文 next I です

関連するQ&A