Excel関数で間違ったデータをピックアップする方法

このQ&Aのポイント
  • Excelの関数を使って、間違って入力されたデータをピックアップする方法を解説します。
  • 特定の条件に基づいて列Aと列Bのデータを比較し、一致しないものを抽出します。
  • この方法を使えば、果物別の評価が複数ある場合に、間違ったデータを見つけて修正することができます。
回答を見る
  • ベストアンサー

excel関数 間違ったデータをピックアップしたい

列Aの各セルに、みかn、りんご、バナナ、メロンなどと入っていて、列Bの各セルは、"A"~"F"の人気ランクが入っています。 列A   列B   みかん  A りんご  C バナナ  D みかん  A メロン  C 列C以降にはその他の色々なデータが入っていますが、それはさておき、列AとBだけの関係を見ると、みかんは必ず"A"、りんごは必ず"C"というように、果物別の評価は決まっているはずです。ところが、間違って入力されて、ある行ではみかんが"A"で、別の行ではみかんが"C"だったりしたら、調べて正しい方に統一したいのです。 そこで、ひとつの果物に対応する評価が複数あるものをピックアップしたいのですが、どうすればいいでしょうか。そのほかの集計作業に関数を使っているので、これも関数で出来ればいいかなと思うのですが。

noname#37681
noname#37681

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.7

#4です。 注意!! 条件付書式で、私の言う方法は、「値が」で、条件を指定してはいけません。 「値が」の見えている右の▼をクリックし、「式が」を選び、出てきたテキストボックスの中に、私の回答の式を貼り付けてください。 その後セルのパターン(薄いタイプの)色を指定し、OKをクリック。

noname#37681
質問者

お礼

なんと、すぐできました!どうもありがとうございました。大変助かりました。

その他の回答 (6)

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

#5 です。 私の書いたことに不快感を持たれたのでしょうか? >専門家が作ったおおもとの立派なデータがあり、私はそれを拝借して自分の部署に必要なデータを作っているまでです なぜ使えないのか良く分かりません。 そのデータ利用をしないで、それ以上の話はないと思います。マスターデータがあって、それを元にして修正していく、というのは、ごく自然の成り行きです。外部に問題を求めても、結局、表面的な問題を触る程度しかないように思います。 それに、「格付けとか」いうのは、たぶん、そのマスターを使うことを考えずに、「演繹的」にデータを修正しようということだと思いますが、私には、理解できないです。今、出てきた回答で、ある程度の目安が立たないとすれば、回答者さん自体の技術力にも疑問が出てきてしまいます。 昔、私自身データベースは扱ってきて、個々のデータの「揺れ」はありました。そうすると、統計が出来ないので、それは、#1さんの書いていた似たような方法で直しました。数千個なんて、数日もあれば直してしまいます。当時は、20年ぐらい前は、それでもやむをえなかったのです。 マスターを使えないというのは、本来は、会社全体のシステム事態に問題がある可能性があります。そういう会社もあることはありますが、そういう場合でも、個々の担当者がマスターを時間をみて作っていくものです。 数千個のレベルなら、器用な人なら、数日あれば出来ます。そうすぐに問題が発生するわけでもないし、発生しても、人為的に修正は可能なら、それは同時進行していくしかありません。 もちろん、この本来の処理は、データベース系で、表計算ではあまりうまく行かないように思いますが、その場合は、CountIf やVlookUpを条件付き書式に埋め込みます。 >あくまでこの質問を読んで何かアイディアがある方がおられましたらお願いします。 ここで継続的に利用して質問していくつもりでしたら、お礼もしないで、そういうレスをするのはやめてくださいね。ダメならダメで構わないのですが、こちらの体験を踏まえて、質問者さんの問題をいろいろ考えて書いているのですから、もう少し言葉を考えてください。

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

こんにちは。 ベースとなるもの(マスター)を作らなければ、その先の自動化などという話にはありえないのではありませんか? もともと、最初に、それがないというのが失敗(と言ってよいのか分かりませんが)の原因ではないかと思います。どんな入力リストでも、業務用の場合は、最初に表計算ソフトなどでマスターを作ります。それでないと、間違いが見つからないし人にも頼めないのですから。 後先になっても、そのマスターを作る方法を考え出さなければ先に進みません。 >別途正しい表を作るというのは無理で、「複数の格付がついている果物をピックアップする」という作業がやはり必要に思います。 複数の存在する「揺れ」を一覧リストを作るというのでしょうか? こちらはどのようなリストか分かりませんが、最初に時間を掛けてでも、自分の手でマスターを作るつもりはない、と読めます。その入力データに一定の基準がないようにも思います。それを後になって直すというのは、いずれにしても大変だというしかありません。 それと、「格付け」という意味が分かりませんし、まさか、ランキングをつけるという意味だとすれば、当面の目標と最終目標と、二本立てして質問者さん自身がこうだと決めていかなければ、先に進めないと思います。 私の考えた方法は、 簡単に説明すると、 ・リストには、タイトル行を加えていただくこと。 ○ C列に、 =A2&B2 で、つなぎ合わせたものを出し、 ・それをフィルタ・オプションで、重複するデータを省く ・= Countif(C列, C2) で、どの程度の数があるか出し、それで、 ・ユーザー自身が、印を入れる ・印を入れたものだけを、残し、それを「マスター」にする。 ○で、統一したものを作るのです。 後は、関数ではじき出したり、条件付書式で色をつけたり、マクロで自動修正してもよいです。 私個人は、これを全部、マクロで作ることも可能ですが、今の段階では、その問題に対する対処法がきちんと組み立てていないような気もしますので、それはやめておきます。

noname#37681
質問者

補足

失敗してませんよ(笑)。 専門家が作ったおおもとの立派なデータがあり、私はそれを拝借して自分の部署に必要なデータを作っているまでです。 詳しく詳細を御説明すると長くなりますので御容赦下さい。あくまでこの質問を読んで何かアイディアがある方がおられましたらお願いします。

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

一番早いのは、A列+B列(+とは両方をこの順序でソートキーに指定すること)でソートし、A,B列を目視でチェックすることです。 2000行でも5分で終わります。 品名と評価クラスのうち種類の多いほうを第1キーにすると、チェックがやりやすい X S X S X S X Q<--この異類のものを見つける Y R Y R この目視チェックをやりやすくするには A1:B1は避けて A2:B列最終行を範囲指定し 書式ー条件付き書式ー式が =AND(A1=A2,B1<>B2) セルに薄い色をつける(セルパターン) ーー 関数ではVLOOKUP関数で規定の商品ー評価の組み合わせ以外は指定できると思うが、改めてその組み合わせテーブルを作る手間がかかる。現データには間違いの組み合わせもありうるのだから、現データから作るのも手間ですから。

noname#37681
質問者

お礼

ありがとうございます!このようなご回答を待っていました。 やってみました。列AとBを選択し、 条件1(1)のそれぞれの欄に、「セルの値が」「次の値に等しい」「=AND(A1=A2,B1<>B2)」と入れたのですが、関係無い(説明文が書いてある)セルが着色され、肝心の商品名・ランクは着色されません(わざとランクが複数ある商品を用意してみたのですが)。 どこが違っているのかお分かりだったら教えて頂けるとありがたいです。 いずれにせよ参考になりました。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

■案1 ・データシートに行見出しがある事(無ければ見出し行を作成して下さい)とし、期待ランク以外を抽出します。 ・又、元データを訂正する為に一連番号列があると分かり易いと思います。 (1)別シートのA1,B1にデータシートと同一の見出し名を設定 (2)別シートA2に「みかん」、B2に「<>A」を設定 (3)別シートC1でデータ→フィルタオプションの設定→警告ボックスが表示されますがOK (4)抽出先を「指定した範囲」にチェック (5)リスト範囲欄にデータシートの対象範囲を選択 (6)検索条件範囲欄に別シートのa1:b2範囲を選択 (7)抽出範囲欄に別シートのc1を選択→OK ■案2 ・相違している行を色付けする。 (1)データシート範囲を選択 (2)書式→条件付き書式 (3)「数式が」を選択、数式欄に=($A1="みかん")*($B2<>"A") (4)書式→パターンタブで任意色を選択→OK  上記を品名分繰り返す

noname#37681
質問者

お礼

ありがとうございます。 「期待ランク以外を抽出」ということは、たとえば「みかん」=「A」等と決めないとならないんですよね。下記お礼等の事情により、それは無理なのです。 また、品名は何百とあるので、品名分繰り返すのも無理です。それをするくらいなら、私が今までやったように、品名をフィルタにかけ、ひとつずつ表示させ、複数の評価格付がないか調べる方がまだ楽と思います。 せっかくなのにすみません。 でも、詳しい方々に御意見を頂いた上でだめならあきらめがつきそうです。

  • suekun
  • ベストアンサー率25% (369/1454)
回答No.2

修正と考えず、正しい物を再設定されてはいかがですが? B列に対して、別にそれぞれの項目毎の対応表を作り VLOOKUP関数を設定して、対応表から反映させる。 みかん:A りんご:B バナナ:C と言う様に、対応表で正しく設定しておけば、あとは項目(品名)を 検索して対応表から付随する項目を引き出します。 仮に作った対応表の範囲がD1:E10で、品名が一行目からだとすると、 =VLOOKUP(検査値 対応表範囲 返す値の列番号 検索方法) ですから、 =VLOOKUP(A1,D1:E10,2,0) このままでは下にコピーすると対応表の範囲が変化するので、 =VLOOKUP(A1,$D$1:$E$10,2,0) として、後は下にコピーするだけです。

noname#37681
質問者

お礼

ありがとうございます。 簡単に説明する為に「正しい」と書いたのですが、正しい/間違いではなく、ある時点ではAだったのに、別の時点ではBに下がった、というようなことがまれにあるのです。そういったものをピックアップして、低い方に統一します。ですので別途正しい表を作るというのは無理で、「複数の格付がついている果物をピックアップする」という作業がやはり必要に思います。 まだまだうまく説明できていないと思います。すみません。

  • gookkj
  • ベストアンサー率49% (64/129)
回答No.1

関数とか難しいこと考えずに、オートフィルタでみかんだけ表示するのが簡単で、しかも速いです。どうせその後、手で間違いを修正するのですから。

noname#37681
質問者

お礼

ありがとうございます。お察しとは思いますが、「みかん」等というのは例で、本当はもっとわかりにくいデータで、何千件もあるのです。今までは、おっしゃるように手作業でやってきましたが、関数等で自動的に出来ればと思って質問した次第です。

関連するQ&A

  • Excel 関数 照合した結果がどこにあるのか表示したいのですが

    照合したいデータがあります。 A列とB列のセルを照合の結果、B列のセルがA列のどこにあるか、C列に行番号を表示したいのですが。 どのような関数がいいのか教えてください。よろしくお願いします。   A列   B列   C列 1 リンゴ みかん  2 2 みかん いちご  4 3 バナナ レモン  6 4 いちご メロン  5 5 メロン ぶどう  × 6 レモン

  • EXCEL関数について

    EXCEL関数について EXCEL2003を使用しております。 お知恵を拝借願います。 「りんご」、「いちご」、「なし」は「グループ1」 「バナナ」、「メロン」は「グループ2」というように、 果物を20個のグループに分けます。 それぞれのグループの果物は、1個から10数個まで様々です。 Sheet2、A列、A2~A100セルに果物名、 Sheet2、B列、B2~B100セルにグループ番号(1~20)がランダムに入力されています。 ここで、Sheet1のA2セルに「りんご」と入力すると、 Sheet1のB2セルにグループ番号「1」が返せるような関数はありますでしょうか? 「VLOOKUP」で試してみたのですが、数字ではなく果物名から検索したいのと、 数字が重複しているので使えないことに気付きました・・・。 何卒ご教示頂きたく宜しくお願い致します。

  • 【EXCEL2000】2つのリストの合計を出すには?

    リストA リンゴ 3 みかん 5 バナナ 2 スイカ 3 リストB りんご 2 メロン 4 バナナ 3 いちご 2 ↑のような2つのリストがあるとして、 リストC りんご 5 みかん 5 バナナ 5 スイカ 3 メロン 4 いちご 2 リストA・Bの合計がリストCのようにするにはどのような関数を使えばいいかお解りになる方教えてください。 判りづらい質問で申し訳ありません。m(_ _)m ※品名と数量は別セルです。

  • Excel2003 複数の条件を満たすデータを抽出する関数を教えて下さ

    Excel2003 複数の条件を満たすデータを抽出する関数を教えて下さい! 下のデータで、A列でB、B列で赤を選んだ人は「みかん」という「みかん」を抽出する関数を教えて頂けませんでしょうか? データシートとは別に集計シートを作成しています。 お忙しい中恐れ入りますが、ご教示下さいますようお願い申し上げます。。。 ●データ A B C 1 A 赤 みかん 2 B 赤 りんご 3 C 白 いちご 4 B 青 いちご 5 D 赤 みかん 6 A 青 みかん 7 C 黄 りんご 8 E 赤 バナナ

  • エクセル関数で、ある条件で表中の値を拾う方法は?

    エクセル関数を使って、表からある条件下でセルを特定する方法を探しています。 match関数とchoose関数の組み合わせでそれなりにできたのですが、その計算式をコピーするにはまた数式を入れなおさなければならない事に気が付いて、その労力に挑む気にはなれません。 マクロを組むという事も考えましたが、関数で対応できそうな気がするので。 例えば、下表にて     A列  B列  C列 1行目 5/12 りんご 300 2行目 5/14 みかん 400 3行目 5/21 いちご 450 4行目 5/24 バナナ 800 5行目 5/31 メロン 950 B列の中で、みかんに一致するセルを特定し、そのみかんを買った日付をセルに書き出したい。 日付だけではなく、その金額も隣のセルに書き出したい。 ちなみに、品目が重複する場合もあるのですがそれは無視していいです。 =choose(match("みかん",B1:B5,0),A1,A2,A3,A4,A5) で、やってみたのですが、実はChooseの引数にあたるものが25個あって、みかんにあたる品目が20個くらいありますので、この数式を20個作らなければならないので他の方法を探しています。 どなたかご存知の方がいましたら教えてください。

  • EXCEL セル内のデータを置き換えたい

    うまく説明できないのですが、 Sheet1のA列とB列に、1つのセルに複数のデータが以下のように入っています。(データの間に「,」があります。)     A列             B列 1行 6599A,6599B,6599C  6599A 2行 6599B,6599C      3行              6599A,6599C これは商品コードでして、Sheet2に明細があります。 A列    B列 りんご  6599A メロン   6599B みかん  6599B Sheet1のデータを、「りんご」「メロン」「みかん」に置き換えたいのです。 データの数が、たくさんあるので、コピー、ペーストでは対応できません。 よい方法をお教えください。よろしくお願いいたします。

  • エクセルで範囲内のデータを別シートにうつしたい

    エクセルで特定の範囲内の数値にあてはまるデータを別のシートに新たな表として作成したいのですが、簡単な方法があれば教えてください。 例えば Sheet1   A   B     C  1 25  ミカン   3000 2 30  リンゴ   4500 3  5  メロン   9800 4 17  ブドウ   1800 5 50  バナナ  1000 このようなデータを次のような表にしたいのです。 A列の数値が10~30のみ行ごと抜粋する Sheet2   A   B     C  1 25  ミカン   3000 2 30  リンゴ   4500 3 17  ブドウ   1800  よろしくお願いいたします。

  • 一番初めに文字列が入っている列の文字列を知りたい

    次の条件で、よりA列に近い文字列を引っ張り出すにはどのような関数を使えば良いのでしょうか? 1)行の中にそれぞれ"文字列"が入っている 2)文字列が入っているセル数は行によって異なる   【A】 【B】 【C】 【D】 【E】 【1】りんご 【2】   ばなな 【3】   みかん りんご 【4】ばなな           みかん この回答を【F】列に示す場合、 【F1】はりんご、【F2】はばな、【F3】はみかん、【F4】はばなな、になって欲しいのです。 上手く質問できないのですが、とても困っています。宜しくお願いします。

  • 重複する不要な行を消し、必要行のみを残したい

    下表のエクセルがあります。果物の種類はたくさん、4月から3月までの表で、みかんの2行目は1行目に5月のデータが追加されたものです。2行目があれば1行目はいらないので2行目だけを残し、1行目は非表示にして別シートに移したいのですが、うまい関数やマクロを教えてください。 A列  B列   C列  D列 果物   4月    5月   計 みかん   2         2 みかん   2     5   7 りんご   3        3 りんご   3     7   10 これを別シートに移す(不要行を削除して) 果物  4月  5月  計 みかん 2   5   7 りんご 3   7   10

  • データを表にする関数を教えてください。

    1果物A1,ナシ 2果物B4,リンゴ 3果物C2,モモ 4果物A1,モモ 5果物C2,リンゴ というデータがあって、それを  ABCDE 1 2 3 4 の表に関数で挿入したいのですが、できますでしょうか?データは200行ぐらいあります。 vlookupでA1で引っ張ると一種類しか引っ張れないので… 表は、ひとつのセルに2つ入らなくてもいいです。とりあえず表的な形になればよいです。 お願いします。

専門家に質問してみよう