電子書籍の厳選無料作品が豊富!

Excel2003を使用しています。

ある表の中のデータで、A列に次の条件に当てはまるデータを行削除したいのですが、マクロではどのように書いたらいいのでしょうか?

(1) @(アットマーク)から始まる場合
(2) 数字から始まる場合
(3) ”キー”と入力がある場合
(4) 空白の場合

よろしくお願いします。

A 回答 (1件)

A列をループして、条件に合う行を削除するだけなので、条件文さえ書ければ、後は自動記録を利用することで作成可能でしょう。



質問文の(3)の条件が、含むなのか完全一致なのか不明ですが、参考までに。(条件が違う場合は、条件設定を修正してください)

Sub test()
Dim r As Long, rMax As Long
Dim v, val As String, rng As Range
rMax = Cells(Rows.Count, 1).End(xlUp).Row
For r = 1 To rMax
val = Cells(r, 1).Value
v = Left(val, 1)
If (v = "@") Or ("0" <= v And v <= "9") Or (val = "キー") Then Cells(r, 1).ClearContents
Next r
If Range(Cells(1, 1), Cells(rMax + 1, 1)).SpecialCells(xlCellTypeBlanks).Count > 1 Then
Range(Cells(1, 1), Cells(rMax, 1)).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End If
End Sub
    • good
    • 0
この回答へのお礼

ありがとうございました。
完璧に処理ができました。
本当に助かりました。

お礼日時:2009/01/30 14:10

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!