すぐに役立つエクセルVBAマクロ集 すぐマク
すぐに役立つ Excel VBA マクロ集 Excel VBA Macro
FAQ
Google
 
Home |  What's New! |  Gallery |  Introduction |  Service |  Profile 500連発・組み方講座フォロー Big Color Pallet
[広告]
Excel VBA Macro
Excel DownLoad
© 1997 - 2008
永井善王.
All RightsReserved.
HappyTech & Co., Ltd.
www.happy500z.com
Excel VBA Macro ・ 値の操作 ・ FAQ
特定の文字列を含むセルを探してその列を削除するには? Click Here! Click Here!
Question 63.9 Excel VBA Borad (掲示板)より Previous Next
こんにちわ。記録マクロでマクロ作成に挑戦している初心者です。
不要なデータを行ごと削除したいのですが、どのようにすれば良いか知恵を貸していただけると嬉しいです。
  (1) 行が件数、列が項目です。
  (2) 件数は毎回変わりますが、項目は一定です。
  (3) S列に、特定の文字列を含むセルがあれば行ごと削除したいです。
  (4) S列のセルのデータは「文字3文字-数字4桁」(あいうえ-0001)です。
  (5) 特定文字列とはハイフンの前のあいうえ部分です。(数字部分は1件ずつ違います)
分かりづらい説明で申し訳ありませんが、お願いします。
Answer   2003.10.25 井川はるき
次のような感じになります。 (処理速度は無視したわかりやすいコードにしています)
Dim myStr As String
Dim myCell As Range
'アクティブシートを対象に処理
'アクティブシートがワークシートでなければ処理しない
    If TypeName(ActiveSheet) <> "Worksheet" Then Exit Sub
    myStr = "ABC" '検索する文字列
    Do
        '検索
        Set myCell = Columns("S").Find(myStr & "-????", , xlValues, xlWhole)
        '検索にヒットしなければループを抜ける
        If myCell Is Nothing Then Exit Do
        'ヒットしたセルの行を削除
        myCell.EntireRow.Delete
    Loop
ありがとうございました
的確でとても分かりやすいお返事、ありがとうございました。
いつも記録マクロでつくって修正しながら作成していますが、結局詰めのところでギブアップしてしまい最後まで作れません。 今回はおかげで最後までがんばって作ろうと思っています。
Click here to visit our sponsor