vba で、上から下まで100行ちょと3行ずつマージするというVBAのプログラムを組みたいのですが、

Range("a4:a6").Merge
といった形で、Range指定でマージしていく方法はすぐわかったのですが、Cellsであれば、下記のように変数を指定して、Do whileのloopでカウントをあげていって、1行目と2行と3行目とかをloopさせていってつぎつぎと結合さえせていくというようなプログラムが思いつくのですが、Rangeの()内で変数は使えるのでしょうか?
Worksheets("合計").Cells(igyou, iretsu)
もしくは、別のmergeの別の方法があるのでしょうか?
基礎的な話で恐縮ですが、わからなくなってしまいました。よろしくお願い致します。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2013/01/07 17:09:21
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:taknt No.1

回答回数13539ベストアンサー獲得回数1198

ポイント100pt
Sub test()

    For a = 1 To 100 Step 3
        Range(Cells(a, "A"), Cells(a + 2, "A")).Merge
    Next a

End Sub


これで できますよ。

id:nakamura12go

ばっちりでした。
おかげで貴重な人生の時間を5時間ぐらいを節約できました。大変ありがとうございます。
早く聞けば良かった・・・。

2013/01/07 15:17:18
id:taknt

>5時間ぐらいを節約できました。

じゃ 安く見積もっても 5000円分の価値は あったということね。

2013/01/07 15:22:35

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません