• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:"excel"もしくは"秀丸"で削除したいデータを同時に複数のデータを)

Excelまたは秀丸で複数のデータを同時に削除する方法

このQ&Aのポイント
  • Excelまたは秀丸を使用して複数のデータを同時に選択指定して削除する方法を教えてください。
  • 例えば、Excelや秀丸で特定のデータを一括で削除する方法を知りたいです。
  • 選択した複数のデータを一度に削除するためには、Excelや秀丸の操作方法が必要です。正確な手順を教えてください。

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

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.4

秀丸エディタの置換の正規表現で、 検索値 (aa|dd)\r\n 置換値 --何もいれない-- で可能だと思います。もしかしたら、置換値は、(aa|dd)\n かもしれません。 こちらは、秀丸がないのですが、似たような仕様をもつ、re.dll で試してみました。 最初の検索値で以下のようになりました。 bb cc ee ff gg

guuid20101
質問者

お礼

Wendy02さん 多くの人に的確なアドバイスを頂いて勉強になりました。 秀丸エディタはメインで使用しているため上記の方法をメインで使っていきたいと思っています。 どうもありがとうございました!

その他の回答 (4)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.5

ちなみに関数でしたいならもうちょっとシンプルに。 例えば添付図のようで, ケース1:A列にデータ,D列に除外文字列,B列に抽出結果 B1に =IF(A1="","",INDEX(A:A,SMALL(IF(COUNTIF(INDIRECT("D1:D"&COUNTA(D:D)),INDIRECT("A1:A"&COUNTA(A:A))),65536,ROW(INDIRECT("A1:A"&COUNTA(A:A)))),ROW(B1)))&"") と記入し,コントロールキーとシフトキーを押しながらEnterで入力,下向けに沢山コピー。 ケース2:A列のデータ範囲とD列の除外文字列の今あるデータ量を見ながら数式を作成すれば,もっと削っても出来ます。 B1に =INDEX(A:A,SMALL(IF(COUNTIF($D$1:$D$5,$A$1:$A$12),65536,ROW($A$1:$A$12)),ROW(B1)))&"" と記入し,コントロールキーとシフトキーを押しながらEnterで入力,下向けにA列のデータ範囲分だけコピー。

guuid20101
質問者

お礼

keithinさん なんどもすみません。 ありがとうございました。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! 私もNo.2さんのオートフィルタを使う方法をおススメしますが・・・ 他の方法の一例です。 かなり無理矢理の方法です。 別の列に表示させる方法です。 ↓の画像のように削除したい項目を別セルに表示させておきます。 (今回はD2・D3セルに表示させています。) B2セルに =IF(COUNTA($A$2:$A$100)-(COUNTIF($A$2:$A$100,$D$2)+COUNTIF($A$2:$A$100,$D$3))<ROW(A1),"",INDEX($A$2:$A$100,SMALL(IF(SUBSTITUTE(SUBSTITUTE($A$2:$A$100,$D$2,""),$D$3,"")<>"",ROW($A$1:$A$99)),ROW(A1)))) これは配列数式になってしまいますので、この画面からB2セルに貼り付け後 F2キーを押す、又はB2セルでダブルクリック、又は数式バー内で一度クリックします。 編集可能になりますので、 Shift+Ctrlキーを押しながらEnterキーで確定します。 数式の前後に{ }マークが入り配列数式になります。 このB2セルをオートフィルで下へコピーすると、画像のような感じになります。 尚、数式はA列の100行目まで対応できるようにしています。 以上、参考になれば良いのですが やはり、オートフィルタを使った方が簡単みたいですね。 どうも長々と失礼しました。m(__)m

guuid20101
質問者

お礼

tom04さん 遅くなって申し訳ございません。 絵付きで視覚的にもとても分かりやすいアイデアを丁寧に教えていただき 本当にありがとうございました!! とても勉強になりました。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

Excel2007を使い,ホームタブで「オートフィルタ」を取り付け,▼をプルダウンすると一覧が出ます。 aaとggをチェックして残りを隠し,aaとddが見えている状態で普通に選んで右クリックして行削除します。 この方法では,一度に何個でも必要なだけチェックを付けて一度に絞り込み出来ます。 2003までのエクセルを使い,データメニューのフィルタから「オートフィルタ」を取り付け,▼をプルダウンして「(オプション)」を選びます。 方法1)  aa と等しい  OR  dd と等しい  で絞り込み,選んで右クリックして行削除します 方法2)  aa と等しくない   AND  dd と等しくない  で絞り込み,選んでコピーし,他のセル範囲に貼り付けます

guuid20101
質問者

お礼

keithinさん ご回答いただきどうもありがとうございました。 オートフィルタ、盲点でした。。 2回も詳しいご回答を頂き本当に嬉しいです。 秀丸とエクセルは今後も同時併用していきたいと考えていますので、 活用させていただきたいと思います!

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

「VBAで、INPUT/OUTPUTの2ファイルを指定して、不要なデータ(行)を読み飛ばしして書き出す」もあり。 何段階かの手順を踏むけど、EXCELのワークシート上で解決するのもあり。 データは1列なんですかね?列Aとします。 1)列Bに連番を振る。(7項で元に戻すため) 2)列Cに、不要なデータにフラグを立てる(値1でOK。残す行は空のまま) 3)列C~列Aを選択(必ずこの方向で) 4)データを並べ替える。 5)不要データが一箇所に固まるので、行を削除する。 6)列B~列Aを選択(必ずこの方向で) 7)データを並べ替える。(削除行を欠番として、元の順序に戻す) 8)不要となる列Bを削除。

guuid20101
質問者

お礼

bin-chanさん 迅速な回答をいただきとても感謝しています。 VBAの知識はあまりないのですが、EXCELの方法を参考にさせていただきました。 ありがとうございました!!