[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『空白行の削除』(いまいち子)
初心者過ぎて過去ログみてもいろんなサイト見てもどうしてもわかりません。
A列 B列 C列 ____________________________ A B
小計 65 C D
小計 6852
上のような表のB列の空白行削除したいです。 空白行は1行のときもあれば、2行、3行・・・のときもあり、ランダムで決まってません。 200行目くらいまでデータがあります。
A列 B列 C列 ____________________________ A B 小計 65 C D 小計 6852
こんな風にするマクロを、過去ログをマネして作っているのですが、うまくできません。 (参考マクロの前半の意味がほとんどわかりません;) どなたかお助け下さい。
Sub B列空白消し() row1 = Cells(Rows.Count, 1).End(xlUp).Row row2 = Cells(Rows.Count, 2).End(xlUp).Row
If row1 > row2 Then lastmax = row1 Else lastmax = row2 End If
Dim i As Long For i = lastmax To 1 Step -1 If Cells(i, 1) = "" Or Cells(i, 2) = "" Then Rows(i).Delete End If Next i End Sub
B列基準であれば、以下でどうでしょうか。(ROUGE) '---- Sub test() Dim i As Long, l_r As Long, txt As String l_r = Range("B" & Rows.Count).End(xlUp).Row For i = l_r To 1 Step -1 If Len(Range("B" & i).Value) = 0 Then txt = txt & "B" & i & "," If Len(txt) > 245 Then Range(Left(txt, Len(txt) - 1)).EntireRow.Delete txt = "" End If End If Next If Len(txt) > 0 Then Range(Left(txt, Len(txt) - 1)).EntireRow.Delete End Sub
すっごい!ばっちり、思い通りにできました。ROUGEさんありがとうございます!! コードの意味がわかるように精進していきます。(いまいち子)
B列だけを見ればいいなら B列を選択して ジャンプ→空白セル→削除→行全体 の記録コードから改造しても良いかもしれませんね。
(HANA)
↑まさにこのコードをアップしようとして衝突でした。 数式で返した "" には反応しません。
Sub tes() Dim lastrow As Long lastrow = Cells(Rows.Count, 2).End(xlUp).Row Range("B1:B" & lastrow).SpecialCells(xlCellTypeBlanks).EntireRow.Delete End Sub (純丸)(o^-')b
あっ、純丸さん。 >記録コードから改造 ってのは、エラー処理も含め だったのですが・・・。
(HANA)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.