こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

EXCELVBAで行の削除

WIN98SE EXCEL2000です。
G列に99の文字があったらその行を削除するというVBAを下記のように作りました。

Dim i As Integer
Dim rowcount As Integer

rowcount = Cells(1,1).CurrentRegion.Rows.Count

For i = 1 To rowcount
If Cells(i, 7) = "99" Then Rows(i).Delete
Next i

これを実行するとG列に99のある行が連続してあると1行おきに削除されます。どこをなおせばよいのか教えてください。よろしくお願いします。

投稿日時 - 2003-10-16 11:50:58

QNo.681094

困ってます

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

こんにちは。maruru01です。

削除すると、下の行が1行繰り上がってしまうので、ずれてしまいます。
したがって、Forループは後ろから廻しましょう。

For i = 1 To rowcount

For i = rowcount To 1 Step -1

投稿日時 - 2003-10-16 12:01:36

お礼

うまくいきました。ありがとうございました。

投稿日時 - 2003-10-16 13:06:26

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問