• ベストアンサー

エクセルでデータ抽出後の元データを自動削除する方法

エクセルで下記のような抽出方法を質問したのですが、 http://okwave.jp/qa/q6856275.html さらに、(2)のようなことが可能でしょうか。 (1)sheet1のA1からA100に入力された文字をsheet2のA1に抽出したい文字をいれると、    sheet2のA2以下に抽出したい文字を含んだ行を抽出。(解決済み) (2)上記、抽出時に抽出された元データを自動的に削除したい。 宜しくお願いします。

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

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

思いつきでついでに聞いちゃえ質問を追加しないで下さい。ご質問内容が解決したなら,新たなヤリタイ事は次の新しい質問投稿でお願いします。 前回のマクロを消して,新しく次のマクロに入れ替えます。 private sub worksheet_change(byval Target as excel.range) if target.count > 1 then exit sub if target.row <> 1 then exit sub if target = "" then exit sub with worksheets("Sheet1") .range("1:1").insert .autofiltermode = false .range("A:A").autofilter field:=1, criteria1:="=*" & target & "*" .autofilter.range.offset(1).copy destination:=cells(65536, target.column).end(xlup).offset(1) .autofilter.range.offset(1).entirerow.delete shift:=xlshiftup .range("1:1").delete end with end sub

marocona
質問者

お礼

おっしゃる通りです。 大変、失礼いたしました。 上記の内容で完璧です。 非常に助かりました。有難う御座いました。

その他の回答 (1)

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

手順: シート2のシート名タブを右クリックしてコードの表示を選ぶ 現れたシートに下記をコピー貼り付ける private sub worksheet_change(byval Target as excel.range) if target.address <> "$A$1" then exit sub if target = "" then exit sub with worksheets("Sheet1") .range("1:1").insert .autofiltermode = false .range("A:A").autofilter field:=1, criteria1:="=*" & target & "*" .autofilter.range.offset(1).copy destination:=range("A65536").end(xlup).offset(1) .autofilter.range.offset(1).entirerow.delete shift:=xlshiftup .range("1:1").delete end with end sub ファイルメニューから終了してエクセルに戻り,A1セルに「あ」を記入する。 #言わずもがなと思いますが念のため,関数で「データを削除する」なんてことは当然全く出来ません。 #別の考え方 教わった関数の方法をそのまま応用して シート2に「あり」のデータを関数で一覧する シート3に「なし」のデータを関数で一覧する という結果の示し方もあります。あなたの実際にやりたいことに応じて工夫して下さい。

marocona
質問者

補足

ご回答ありがとうございます。 上記の方法でできました。 さらに、このようなこともできるのでしょうか? <sheet2>    A      B 1 「あ」    「い」 2 あ い   い う 3 あ う 4 あ え 5 え あ sheet2のA1に検索文字「あ」を入力し、A2以下に抽出。 抽出された元データは削除。 更に、B1に検索文字「い」を入力し、B2以下に抽出。 抽出された元データは削除。 各列1に検索文字を入れ、検索文字の下に抽出。 抽出された元データは削除。のようになればと考えておりますが、 可能なのでしょうか?

関連するQ&A

  • エクセルで特定の文字を含んだものを抽出するには

    エクセルで、sheet1のA1からA100に入力された文字があるとします。 sheet2のA1に抽出したい文字をいれると、sheet2のA2以下に抽出したい文字を含んだ行を抽出したいのですが可能でしょうか。 例) ■sheet1    A(昇順) 1 あ い 2 あ う 3 あ え 4 い う 5 え あ ■sheet2     A 1 検索条件「あ」 2 「あ」を含む行を自動的に抽出  あ い 3 「あ」を含む行を自動的に抽出  あ う 4 「あ」を含む行を自動的に抽出  あ え 5 「あ」を含む行を自動的に抽出  え あ ※「あ」を含む行だけを抽出したい 宜しくお願いします。 相談をして申し訳ございませんが、回答を確認するのが明日になります。

  • エクセルでランダムに抽出後、一つのセルにまとめる方法

    エクセル初心者です。 エクセルのシート1に A列の1行目~10行目にA~Jまでの文字が入力されています。 これをシート2の B列の1~100行目に シート1からランダムで抽出した3つ又は4つの文字を ACE DFG ・・・・ のように埋めるには、どのような式を入れればできるのでしょうか? 文字はだぶらないように抽出したいと思います。 文字はCAEのように、順番が逆になっても構いません。 むしろ時々逆になったりするほうが都合がよいです。 抽出される文字数も、3つだけでなく、ランダムで4つ抽出するときも あるようにしたいです。 オフィス2003を使用しています。 ご回答よろしくお願いします。

  • Excel 抽出したデータで別シート自動作成

    Excelで、条件で抽出したデータを、自動で別シート作成およびデータ出力したい 外部サイトで恐縮ですが、 こちら → http://oshiete1.nifty.com/qa6295795.html   の内容が似ているとは思いますが、 シートの自動作成まで含めるとどうなるのでしょうか 添付画像のように、 sheet1に(画像ではすでに入力済みですが)、たとえば 地区 列に「え」と入力すると 【え】というシートが自動作成の上、地区え の行が出力される 次に「え」と入力すると同シートの次の行に出力される 【い】というシートも同様です。 このようにするにはどうすればいいのでしょうか? 事情により急いでいます。何卒よろしくお願いいたします。

  • エクセルデータ抽出方法を教えてください

    エクセルでのデーター抽出方法を教えてください、シート1:A1にUA1と入力し、シート2:A列にはUA1・・・・複数のデータが縦に並んでいます、シート1:A1に入力したデーターを元にシート2:A列を検索し該当するデータの抽出を行いたいです、VLOOKUPではうまく行きません教えてください

  • エクセルで抽出データを削除修正する方法

    エクセル2003で在庫管理を行おうと思います。 シートBに管理番号の他に個別データを入力し、シートA上に入力した管理番号でシートB上の該当データを抽出、シートA上の一覧表に表示させるようにしたいと思います。 シートAに入力した管理番号でシートB中の中からLOOKUPで指定条件に該当するデータを抽出、リンク貼り付けで一覧表(シートA)に表示させる方法です。 該当データをシートAで確認後、売却や修正判断し、シートBのデータを削除又は修正を行いたいと考えております。また新規データ追加をシートA上からシートB最終行に追加したいと考えております。 BVAなら可能な気もしますが、まだ勉強中で役に立たず、関数での処理方法をお願いします。 質問1 シートB上で検索を掛ける方法もあるでしょうが、シートA上で削除又は修正できないでしょう       か?又はシートA上から目標のシートB該当行にジャンプする方法 質問2 シートA上からシートB上の最終行に新規データを追加又はシートAから最終行にジャンプする方法 以上、よろしくお願いします。

  • エクセルの空白行を自動的抽出し削除する方法はありますか?

    エクセルにおいて、何も記載されていない行だけを自動的に抽出してまとめて削除する方法はありますか?

  • エクセルのデータ抽出について

    エクセルのデータ抽出(?)について質問なのですが、 例えばシートで○○店、▲▲店、××店というように分かれていて、それぞれのシートの中に、同じような表があり、    A      B 1  氏名    更新日 2  鈴木太郎  2008/12/20 3  佐藤花子  2009/03/15 といったように、更新が必要な人だけがBのセルに更新日が入るとします。(更新不要の人は空白です。) この更新日が入力されている人の行を、抽出するような感じで別シートへ自動で出来るのでしょうか?(更新必要なくなって、更新日を空白にしたら、抽出したほうも自動で消えるような)

  • エクセル-条件に合うデータだけを別シートへ

    お世話になっております。エクセル数式について質問です。 元リストが入力してあるシート   A  B  C D E F G H I J K L M N O P Q R 1 番号 名称・・・・・・・・・・その他・・・・・・・・・・・ 2 3 4 23  のり・・・・・・ 5 25  はさみ・・・・・・ このようなデータが、2000行あります。 この中から、下記のようにJの列の「用途」という文字だけを別シートにレイアウトで抽出をしたいのです。 (抽出は、A4~Q4、A2000~Q2000) 抽出先リスト 番号 名称 ・・・・・・・その他・・・・ 1  のり・・・・・・・・用途・・・・ 3  はさみ・・・・・・・用途・・・・ ※元リストは今後増える予定。 ※リストが増えた際の、再抽出はできるだけ自動でやりたい。 ※マクロは極力使いたくないです。 ご教授下さい。 よろしくお願いします。

  • エクセル-条件に合うデータだけを別シートへ

    お世話になっております。 エクセル数式について質問です。 元リストが入力してあるシート   A  B  C D E F G H I J K L M N O P Q R 1 番号 名称・・・・・・・・・・その他・・・・・・・・・・・ 2 3 4 23  のり・・・・・・ 5 25  はさみ・・・・・・ このようなデータが、2000行あります。 この中から、下記のようにJの列の「用途」という文字だけを別シートにレイアウトで抽出をしたいのです。 (抽出は、A4~Q4、A2000~Q2000) 抽出先リスト 番号 名称 ・・・・・・・その他・・・・ 1  のり・・・・・・・・用途・・・・ 3  はさみ・・・・・・・用途・・・・ ※元リストは今後増える予定。 ※リストが増えた際の、再抽出はできるだけ自動でやりたい。 数式で、データを抽出したいです。 数式のサイトを色々みて調べましたが、自分でやっても うまくリンクされませんでした。 数式を教えてください。 よろしくお願いします。

  • Excelで、他のExcelファイルからデータ抽出

    はじめまして。 タイトル通り、Excelのマクロで、他のExcelファイルのデータを抽出するマクロを作っています。 http://okwave.jp/qa/q3681193.html 上記ベストアンサーQ&Aを参考にして、他のExcelファイルからデータを持ってくるマクロを作ることは出来たのですが ・パスワードのかかったファイルから抽出する際は、パスワードの入力を省きたい(パスワードは全て同一)。 ・シート名は月日表示(0129など)になっており、何月何日から何月何日までのデータを持ってくるか指定出来るようにしたい。 ・抽出先のセルに何もデータがないときは何もデータを返さないようにしたい(現状は"0"が返ってきます)。 上記3点が上手く出来ず、詰まっている状態です。 何かいい方法があれば、ご教授願いたく質問をさせていただきました。 よろしくお願いいたします。

専門家に質問してみよう