[[20170120092510]] 『ステップ処理について。』(ヤイリ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『ステップ処理について。』(ヤイリ)

[[20161221112848]]でご質問した件ですが

 例えば1205行のデータがあったとして
 200行ごとに空の行データを入れることは出来ますでしょうか。

 例1205行データ
  ↓
  1211行データ
に対して

 Sub test1()

    Dim i As Long
    For i = 200 To 1200 Step 200
        Rows(i).Insert
    Next
End Sub

というステップ処理を
ご提示いただいたのですが

200行ごとに空の行データを
2つずつ入れたいのですが
うまくできません。

お手数ですが
宜しくお願い致します。

< 使用 Excel:Excel2010、使用 OS:Windows7 >


単純に

Sub test1()

    Dim i As Long
    For i = 200 To 1200 Step 200
        Rows(i).Insert
        Rows(i + 1).Insert
    Next
End Sub

ではダメなのですか?
(素人) 2017/01/20(金) 09:44


 Sub test1()

    Dim i As Long

    For i = 200 To 1200 Step 200
        Rows(i & ":" & i + 1).Insert
    Next

 End Sub

 ということですか?
(bi) 2017/01/20(金) 09:48

挿入行を変えたい時はこちらを

Sub test()

    Dim i As Integer
    Dim 挿入行 As Integer

    挿入行 = 2 'ここの数字を変える

        For i = 200 To 1200 Step 200
            Rows(i).EntireRow.Resize(挿入行).Insert Shift:=xlDown
        Next

End Sub

(pooh) 2017/01/20(金) 09:53


(素人)さん。(bi)さん。(pooh)さん。
ありがとうございます。
それぞれのご提示いただいたコードですと
最初の200行までは
199行の次に空白が2行続くのですが
それ以降の行は
198行ごとに空白が2行挿入されてしまいます。
こちらもうまくいかなかったので
ご質問させて頂きました。
エラー内容を細かく記述してなく
申し訳ございません。
(ヤイリ) 2017/01/20(金) 10:03

 Step 200 → Step 201
 ということなのかな?
(bi) 2017/01/20(金) 10:10

多分そうですね。

Sub test1()

    Dim i As Long
    For i = 200 To 1205 Step 201
        Rows(i).Resize(2).Insert
    Next
End Sub
(ウッシ) 2017/01/20(金) 10:18

(ウッシ)さん。(bi)さん。

上記で対応出来、助かりました。
どうもありがとうございます。
今後ともよろしくお願いいたします。

(ヤイリ) 2017/01/20(金) 10:20


せっかくなので書いておきます。

Sub test()

    Dim i As Integer
    Dim 挿入行 As Integer
    Dim 行 As Integer

    行 = 200
    挿入行 = 2

        For i = 行 To 1205 Step 201
            Cells(i, 1).EntireRow.Resize(挿入行).Insert Shift:=xlDown
            行 = 行 + 1
        Next

End Sub
(pooh) 2017/01/20(金) 10:34


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.