OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
締切り
済み

EXCELで文字検索したセルの行と前後の行の削除の方法

  • すぐに回答を!
  • 質問No.113038
  • 閲覧数498
  • ありがとう数1
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 32% (26/80)

EXCEL-VBAを使ってワークシートのデータ整形をしています。
ある文字列を検索し、その文字列を含む行とその前後の行を削除するロジックを記述したいのですがうまくできません。
例:検索文字列「合計」、"合計"の入っているセル「B120」のとき、B119~B121の3行分の行削除をしたい。
おそらく検索された文字列を含むセルの行番号を取得してその番号-1と+1の行を選択して削除すればよいのではないかと思ってるのですが、もっと良い方法があるのでしょうか?
よろしくお願いします。
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全1件)

  • 回答No.1
レベル13

ベストアンサー率 68% (791/1163)

マクロを書いてみました。 検索する文字を入力します。シートの中であるだけ削除してしまいます。 削除する行が2行以上離れている保証があれば簡単なのですが、連続して削除対象、1行飛んで削除対象も考慮するのに考え込んでしまいました。解決方法として、最初に削除するセルに『削除する行です』と書き込んで、後から『削除する行です』と書いた行を削除しています。(多分うまくいくと思います) 削除なので、コピーを取 ...続きを読む
マクロを書いてみました。
検索する文字を入力します。シートの中であるだけ削除してしまいます。

削除する行が2行以上離れている保証があれば簡単なのですが、連続して削除対象、1行飛んで削除対象も考慮するのに考え込んでしまいました。解決方法として、最初に削除するセルに『削除する行です』と書き込んで、後から『削除する行です』と書いた行を削除しています。(多分うまくいくと思います)
削除なので、コピーを取って実行して下さい。(保存しなければいい?)

標準モジュールに貼り付けます。

Public Sub Kensaku_Delete2()
  Dim sch_Moji As String '検索する文字
  Dim sch_rg As Range '検索したセル
  Dim sch_RowNo As Long '検索したセルの行番号

  sch_Moji = InputBox("検索する文字を入力して下さい。")
    If sch_Moji = "" Then
      Exit Sub
    End If

  Application.ScreenUpdating = False
  '削除する行に印を付ける
  Range("A1").Select
  Set sch_rg = Cells.Find(sch_Moji)
  While Not (sch_rg Is Nothing)
    If sch_rg.Row <> 1 Then
      sch_rg.Offset(-1, 0) = "削除する行です" '前の行に印をつける
    End If
    sch_rg.Offset(1, 1) = "削除する行です" '次の行に印をつける(1つ右)
    sch_rg.Offset(0, 0) = "削除する行です" '探した行に印をつける

    Set sch_rg = Cells.FindNext(ActiveCell)
  Wend

  '印を付けた行を削除する
  Range("A1").Select
  Set sch_rg = Cells.Find("削除する行です")
  While Not (sch_rg Is Nothing)
    Rows(sch_rg.Row).Delete

    Range("A1").Select
    Set sch_rg = Cells.FindNext(ActiveCell)
  Wend
  Application.ScreenUpdating = True
End Sub

このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ