エクセル関数:最安値の業者名と下代を抽出する方法

このQ&Aのポイント
  • エクセルの関数を使って、最安値の業者名と下代を抽出する方法について教えてください。
  • 【図2】にある一覧から、商品名が「えええ」で最安値の業者名と下代を抽出する方法を教えてください。
  • エクセルの関数の設定方法が分からないので、詳しい方法を教えてください。
回答を見る
  • ベストアンサー

エクセルの関数について教えて下さい。

【図1】 コード  商品番号  業者名    商品名   上代   下代 11111    a      ※1     えええ     2,000   ※2 ※1、【図2】の一覧から、えええが最安値の業者名を抽出したい。 ※2、【図2】にある最安値店舗の下代を抽出したい。 【図2】 コード  商品番号  業者名    商品名    上代   下代 11111    a      テスト      えええ     2,000    1,000 11111    a     あああ     えええ     2,000    1,300 11111    a     いいい     えええ     2,000   1,250 11111    a     ううう      えええ    2,000    800 関数の設定が分かりません。。。 どなたか教えて下さい。宜しくお願い致します。

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

  • ベストアンサー
  • yosifuji20
  • ベストアンサー率43% (2675/6115)
回答No.3

Ano,2です。 >例えばA列(コード)に異なるコードが含まれている場合、 MIN関数を使用して下代の最安値を抽出する事は出来るのでしょうか? その場合は、抽出したいコードをどこかのセルで指定をします。 例えば、セルG1に”11111”などと入力をします。 その上でG2以下のG列に =IF(A2=$G$1,F2,999999999999) という式を設定すれば、指定のコード以外は下代は999999999999になりますから、MINの条件から除くことが出来ます。 そこでG2以下のセルでMIN関数を使えばご希望の結果が得られます。 999999999999は予想される最高の下代よりも大きい数値であれば何でもかまいません。

yama1125
質問者

お礼

ありがとうございます。 早速作成してみます!

その他の回答 (3)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.4

図2の表がシート2のA1セルからF1セルには項目名が2行目から下方に各データが入力されているとします。 シート1では図1がA列からF列の1行目に項目名があるとして、C2セルには次の式を入力して、式を確定する段階でCtrlキーとShiftキーを押しながらEnterキーを押します。その後にその式をF2セルまで横にドラッグコピーしたのちに下方にもドラッグコピーします。 =IFERROR(INDEX(Sheet2!$C:$F,MATCH(MIN((IF((Sheet2!$A$2:$A$1000=$A2)*(Sheet2!$B$2:$B$1000=$B2),Sheet2!$F$2:$F$1000))),Sheet2!$F:$F,0),COLUMN(A1)),"") 古いエクセルのバージョンでは次のような式を入力し式の確定段階は上記のようにします。 =IF(ISERROR(INDEX(Sheet2!$C:$F,MATCH(MIN((IF((Sheet2!$A$2:$A$1000=$A2)*(Sheet2!$B$2:$B$1000=$B2),Sheet2!$F$2:$F$1000))),Sheet2!$F:$F,0),COLUMN(A1))),"",INDEX(Sheet2!$C:$F,MATCH(MIN((IF((Sheet2!$A$2:$A$1000=$A2)*(Sheet2!$B$2:$B$1000=$B2),Sheet2!$F$2:$F$1000))),Sheet2!$F:$F,0),COLUMN(A1)))

yama1125
質問者

お礼

ありがとうございます。 お陰様で解決出来ました! 貴重なご意見ありがとうございました!

  • yosifuji20
  • ベストアンサー率43% (2675/6115)
回答No.2

※2のセルがF2,※1のセルがC2とします。 また【図2】の下代をF5:F9とします。 まず【図1】の※2、セルF2に次の式を入れます  =MIN(F5:F8) 次に【図2】の下代をF5:F9とした場合に、G5:G9に下記の式を入れます。  =IF(F5=F$2,ROW(),0) 最後に【図1】の※1 セルC2に次の式をセットします。  =INDIRECT("C"&MAX(G5:G9)) INDIRECT関数はカッコ内であらわされるテキストの内容、たとえば”C"&9 であれば=C9と言う式と同じ参照をする関数です。 ただし上記の例では同じ下代が複数すうある場合は、一番下の店を表示します。 関数相互の意味は良く考えてみてください。

yama1125
質問者

お礼

ありがとうございます。 補足を追加させて頂きましたので、 大変お手数ですが、ご回答頂けると幸いで御座います。

yama1125
質問者

補足

例えばA列(コード)に異なるコードが含まれている場合、 MIN関数を使用して下代の最安値を抽出する事は出来るのでしょうか?

  • f-uga
  • ベストアンサー率37% (168/445)
回答No.1

質問者様が求めるような回答にはならないかもしれませんが、最安値の業者名を出す方法なら1つあります。 ただし、私のPCでは「Excel 2010」なので、2010仕様で説明させていただきます。 結論を一言で言えば「最小値を求め、その値を検索する」です。 質問者様は仕事(?)とはいえ、エクセルをどのくらい使いこなしているか分からないので、その詳しいやり方も念のため投稿させていただきます。 下記の説明では意味フと思う場合は、この私の回答にその旨を補足して下さい。 **ステップ1** 任意のセル(データを入力するマス)に以下のように入力してください。(全て半角入力で!) =MIN(@1:@2) ここで@1と@2は範囲です。任意のデータ範囲を入力してください。 例えば、B3からB12の範囲にデータがあれば =MIN(B3:B12) となります。 上記のように入力したらキーボードのエンターキー(Enter)を押してください。 指定した範囲内のデータの最小値が表示されます。 **ステップ2** 次に、画面の上の方にある「ホーム」というタブをクリックしてください。 フォントの種類や大きさ、文字の色などの設定する欄の右端に「検索と選択▼」というのがあるので、クリックしてください。 メニューが表示されるので、その中で一番上の「検索」をクリックしてください。 「検索する文字列(N):_______」 というのが表示されるので、先ほど表示された最小値を「___」に該当する部分に入力してください。 入力したらキーボードのエンターキー(Enter)を押してください。 **ステップ3** ステップ2で入力した画面の下に、左から順に「ブック、シート、名前、セル、数式」の順に結果が表示されます。 最小値は一つしかないと思うので、表示されているものをクリックすれば、最小値のあるセルに自動で移動してくれます。 そのセルのある業者が最安値。という結果になります。 説明は長くなってしまいましたが、ここの説明を読むのと実際にやるのとでは、予想する以上に大変な作業ではないので、試してみてください。

yama1125
質問者

お礼

ご丁寧にありがとうございます。 エクセルの知識はあまり御座いませんので、 操作方法など分かりやすく、助かりました。 また、補足を追加させて頂きましたので、 大変お手数ですが、ご回答頂けると幸いで御座います。

yama1125
質問者

補足

例えばA列(コード)に異なるコードが含まれている場合、 MIN関数を使用して下代の最安値を抽出する事は出来るのでしょうか?

関連するQ&A

  • エクセル 関数について

    ▼質問内容 【図1】 コード  商品番号  業者名    商品名   上代   下代 11111    a      ※1     えええ     2,000   ※2 ※1、【図2】の一覧から、えええが最安値の業者名を抽出したい。 ※2、【図2】にある最安値店舗の下代を抽出したい。 【図2】 コード  商品番号  業者名    商品名    上代   下代 11111    a      テスト      えええ     2,000    1,000 11111    a     あああ     えええ     2,000    1,300 11111    a     いいい     えええ     2,000   1,250 11111    a     ううう      えええ    2,000    800 ▼解説として、 図2の表がシート2のA1セルからF1セルには項目名が2行目から下方に各データが入力されているとします。 シート1では図1がA列からF列の1行目に項目名があるとして、C2セルには次の式を入力して、式を確定する段階でCtrlキーとShiftキーを押しながらEnterキーを押します。その後にその式をF2セルまで横にドラッグコピーしたのちに下方にもドラッグコピーします。 こちらの設定をすれば、解決するとご教示頂いたのですが・・・ =IFERROR(INDEX(Sheet2!$C:$F,MATCH(MIN((IF((Sheet2!$A$2:$A$1000=$A2)*(Sheet2!$B$2:$B$1000=$B2),Sheet2!$F$2:$F$1000))),Sheet2!$F:$F,0),COLUMN(A1)),"") 行数が増えてきたのと、【図1】のデータ配列を変えなくてはいけなくなってしまい、 結果として最安値ではない業者名が抽出されてしまうといった事態になってしまいました。 【図1】 コード  商品番号  業者名  ブランド名  商品名  上代   下代 11111    a      ※1     いいい   えええ   2,000   ※2 解決策が見当たらず、非常に困ってしまいました。 どなたか、解決方法をご教示頂けませんでしょうか? 宜しくお願い致します。

  • Excel 関数

    Excelの関数で教えていただきたいことがあります。 A       B      C  店舗コード 売上金額 商品名 1111     1,000    AAA 1111     2,000    BBB 1112     1,000    CCC 1111     2,000    DDD 上記のように、店舗別X商品別の売上金額一覧があります。こちらから、店舗別のTop10ランキングを作成したいです。金額のTop10は集計表の店舗コードをKeyとしてLarge関数で引っ張ってきていますが、商品名も同様に引っ張ってきたいです。しかしながら、参照テーブルでは同額のものがあるため、indexとmatchの入れ子, offset, indirect関数、indexとsumproductの入れ子でもやり方が正しくないようでエラーになってしまいます。 集計表では、 商品名  金額 で並べており、金額のところに店舗コードをKeyとしたLarge関数が入っています。こちらのLarge関数で指定している値と同じ行数の別の列数(B列を引っ張りたい)を返してくれればいいのですが、正しいやり方がわかりません。。。 どなたかご存じないでしょうか? よろしくお願いします!      

  • エクセルどの関数を使えばいいの??

    エクセルでA、BC、D,Eの各商品の注文リストを作成しています。シートAには商品Aを購入したお店と店名コードが記入されています。シートBには300店舗すべての店名コードの一覧があり、シートAで購入したお店のコードからシートBの一覧リストに ○ をつけて 購入リストを作成したいです。どのような 関数を使えばよいか教えてください。関数でできるのかどうかも 疑問です。ネストを使えばできるでしょうか

  • エクセルと検索関数について

    エクセルの関数を教えてください。 Sheet1にA社の商品がありA1に商品コード A2商品名 A3数量。 同じくB社Seet2にA1に商品コード A2商品名 A3数量。 A社にあってB社にない商品だけをSheet3に商品コードと商品名と数量を抽出したいのですが、 検索は商品コードでお願いします。 何回か挑戦したのですができません。 仕事で使いたいのでお手数ですがよろしくお願いします。

  • ピポットテーブルをつかって

    4月からの増税が影響し、仕入商品の下代が値上がりします。 そこで、我が社に登録されている商品の中で、下代が値上がりする商品だけ、ピポットテーブルを つかって、抽出したいです。 例:商品コードのデータ 商品番号 /メーカー/ 品番/下代 ......................... Aメーカーからもらったデータ 品番/現在の下代/4月からの下代 Bメーカーからもらったデータ 品番/現在の下代/4月からの下代 その他、同様に値上げする複数のメーカーより頂いたデータを使用。 最終的には、我が社で、値上げする商品コードとメーカーと品番が抽出された データを別シートに作成できればと思います。 ピポットテーブルについて無知な私をどうか助けて下さい。 宜しくお願いします。   

  • エクセル関数で行を抽出したいのですが…

    エクセルでsheet1にA2:AQ2034とデータがあります。 A列=コード(重複コードなし) B列=商品名(重複商品名なし) C~AQ=月々の売上(2003.1~2006.5までの月々売上) これをsheet2でA列、A1をタイトル行とし、A2以下にコードを入れると そのコードの行(B~AQ)が抽出されるようにしたいのですが、 関数でどのようにしたらいいでしょうか? ご教授お願いします。

  • エクセルで関数を使いこのようなこと可能でしょうか?

    こんにちは。皆様のお力を貸してください。 エクセルで商品一覧(シートA)を作りました。販売管理(シートB)と連動させ、納品日欄(F列)に日付が入ったら、列Bに入っている商品の仕入金額をG列に入れたいのです。商品一覧シートは、A列に商品コード、B列に商品名、C列に商品金額、D列に表示させたい仕入金額が入ってます。 関数で簡単に出来そうですが、組み方がいまいちわかりません。 ご存知の方いましたら、ご教授願います。

  • エクセル関数について教えて下さい。

    商品発送リストがありまして、漢字名・郵便番号・住所・電話番号・発送日・商品名の入力があります。 この中からAさんに何時・何を・何回発送したかを調べたいのです。 名前で検索をかけ、データにAさんの名前がある行数分、全てを抽出したいです。 例)Aさん・〒・住所・TEL・発送日・商品名 のデータ全てを1行にし、Aさんへ5回発送していたら、5行に渡り各発送時の内容を全て表示させたいのです。 この場合何の関数を使えばよいでしょうか? 名前のかな表示を別セルで作るべきでしょうか? 急いでおります。 宜しくお願いしますm(__)m

  • Excel関数について教えて下さい。

    データベースの中から2つの条件に合うデータの抽出がしたい。 例)  A列に店舗番号、B列に職位、C列に名前があるデータベースの中から、 別ファイルで店舗番号別のマネージャー(職位)が誰であるかの一覧表を作成したい。 単純に、オートフィルタでデータ抽出はできるが、頻繁にデータベースの内容が変わるため、 常に最新のデータが作れるように、関数で一覧表をつくりたい。 IFとANDとVLOOKUPでいろいろと考えてみてますが、うまくいきません。。。 どうぞ宜しくお願いいたします。

  • エクセルの関数で

    いつもお世話になってます。 例えばA列に商品コード、B列に商品名が入力されているシートがあって、あるセル(例えばC1)に商品コードを入力すると特定のセル(例えば(D2)に商品名が転記されるようにするにはD2にはどのような関数を書けばいいのかどなたか教えてください。

専門家に質問してみよう