シートAとシートBの共通点は、「商品コード」とします。その価格が他の列に入っています。シートAを中心(正確)として、価格が合っている場合と間違っている場合を確認する関数を教えて下さい。
VLOOKUPは得意で頻繁に使用しますが、この場合は、無理なように思えます。一列 列挿入して、何かの関数をそこに入れるのではと思うのですが……。INDEXとかMATCHとか ネットで調べてみたのですが、この場合はこういった関数を使用するのでしょうか?ちなみに、INDEX関数やMATCH関数は使用した事がありません。宜しくお願いします。ヴァージョンは、2010です。

質問者からの補足コメント

  • 説明が悪くてすみません。
    シートAには、商品コードがかなり多く600行くらいあります。商品名やサイズや色がらや受注年月日も別の列に入っています。抜けているセルもあります。
    シートBは、もっと整理がされていなくて、年月日も書式が違っていたり、他の列に別の商品コードが入っていたりと大変見づらいです。
    さらに、商品コードが違っていて同じ価格という商品が多すぎます。よって、VlookUpで価格を入力するのは無理そうです。
    IF関数&AND関数とかで何とか出来ないでしょうか?
    上記の説明では私の意図は伝わりにくいでしょうか?お忙しいところ申し訳ありません。

    No.1の回答に寄せられた補足コメントです。 補足日時:2015/10/27 00:51
  • 【確認の質問①】
    有難うございます。今簡易的に、シートAとシートBにのデータを作って行ってみました。
    少々確認してよろしいでしょうか?
    ①まず、商品コードは、A126,A3578,B00021,C584,D4520,D0047 等、アルファベットから始まっています。アルファベットは半角です。
    そこで、シートAとシートBの商品コード列を選択して、置換機能を使ってアルファベット毎に、半角→全角に修正しました。これ以外に簡潔に全角にする方法って無いですよね?!
    ②そして、シートCを挿入。シートAの商品コードと商品価格をシートCのA列とB列にコピペしました。その後、2列ともコピー→値ペーストして数式をとりましたが、よかったでしょうか?
    ③シートCを商品番号を基準に昇順で並べ替えをしました。この場合、アルファベット基準に昇順となりました。並べ替えが重要なのですね?!
    ⇒【確認の質問②】へ続く

    No.4の回答に寄せられた補足コメントです。 補足日時:2015/10/27 22:51
  • 【確認の質問②】(【確認の質問①】の続き)

    ③シートBの空いている列に、VLOOKUPを使い、シートCの商品コードを引っ張りました。ところで、常に私は完全一致にしたいので、=VLOOKUP($E1,シートC!$A:$B,1,0)としてしまいますが、TRUE型でなくてもよろしいでしょうか?
    ④シートBの隣の列にもシートCの商品価格を挿入しました。
    ⑤そして、この2列をコピー→値ペーストして数式をとりました。
    ⑥あとは、不一致数値を確認するだけですね?!

    以上の手順でよかったのでしょうか?理解が間違っているなら、ご指摘をお願い致します。

    会社ではもっとデータが多いのですが、これで出来るのなら 確かに時間の短縮になると思います。
    宜しくお願い致します。

      補足日時:2015/10/27 22:54

このQ&Aに関連する最新のQ&A

A 回答 (5件)

Vlookupの検索の型は、私の間違いです。

完全一致は[FALSE]ですね。申し訳ありません。完全一致で検索をします。No-4の画像のような、近似値がないデータだったから[TRUE]でも抽出できただけです。

[FALSE]が正解です。
並べ替えよりも、[FALSE]で完全一致にする方が重要です。

FALSEなら並び替えていないデータからでも、抽出できます。シートAの使っていない列にVlookup関数を入れて下までペーストすれば、完全一致のデータを抽出できます。

並べ替えているデータ [TRUE]近似値を抽出
並べ替えているデータ [FALSE]完全一致
並べ替えていないデータ[TRUE]#N/Aになることもありますが、違う値を取り出すこともあります。
違う値でもデータは抽出できたので、気付かない危険があります。

【並べ替えていないデータで[TRUE]は絶対NGです。】

並べ替えていないデータで、[FALSE]にして、同様の手順で抽出してみてください。

結果があっているのかの確認は、目視ではなく、
関数を使って正規の価格の列と比較してください。

正規の列が[T列] VLOOKUPの関数を入れた列が[W列]なら
=IF(T1=W1,1,0)

この式をデータのある【開始行】から【最終行】までペーストします。

そしてその隣の列に
=COUNTIF(W:W,1)と入れます。

その結果が、(【最終行】-【開始行】+1)になっていたらOKです。

開始行5 最終行2000なら [1996]です。

違う値になっていた場合は、半角 & 全角 などの違いが原因かもしれません。

原因がわかるまで元の値のままにしておきます。
    • good
    • 0
この回答へのお礼

ありがとう

ものすごく丁重に細かく教えて頂き有難うございました。会社でやってみます。本当に有難うございました。

お礼日時:2015/10/29 07:11

VLOOKUP関数だけで、不一致データを取り出す方法を解説します。


※添付画像では、[商品コード]ではなく[商品名]にしてあります。コードの羅列だと見づらいかなと思ったからです。

それぞれの商品は、[テレビ○○円、パソコン▽▽円]のように決まっています。

正規の価格があるシートを【シートA】、価格修正をするシートを【シートB】とします。

シートAの【商品コード】のある列を全部コピーします。

ワークシートを追加します。追加したシートをシートCとします。シートCのA1セルを選択してペーストします。

次にシートAの【商品価格】がある列を全部コピーします。

シートCのB1セルを選択してペーストします。

【重要】
シートCに貼り付けた【データ全部】を、【A列を基準にして昇順】で並べ替えます。これをしないとVLOOKUP関数で正確な価格を取り出せません。

使用していない列を、データを取り出す列として【一時的に】使います。VLOOKUP関数でデータを呼び出したら価格のある列に貼り付けてDELETEで消してしまいます。

※列の挿入はしないでください。既にシートに入力してある関数の参照が変わってしまうかもしれませんので…。

図ではG1セルに入れました。
=VLOOKUP(E1,シートC!A:B,1,TRUE)

検索値は、E1セルの値を参照します。商品コードのある列がE列で、データが一行目から始まっているからです。

例えば、シートBの、商品コードの列がRで、5行目から始まっているとしたら、
=VLOOKUP(R5,シートC!A:B,1,TRUE)
にします。シートCも、挿入したシートの名前と同じにしてください。

すると、商品コードが出てくるはずです。

その行の商品コードの値と同じになっているはずです。

入力した関数を、下までコピー&ペーストします。

【それぞれの商品コードと一致しているか確認してください】

=VLOOKUP(E1,シートC!A:B,1,TRUE)
=VLOOKUP(E1,シートC!A:B,2,TRUE)

列番号を2に変更します。

今度は正規価格が表示されたはずです。正規価格表をコピーしたシートCから値を取り出しているわけです。

シートCの商品コードに重複値があっても、価格は一致しているので問題ありません。

VLOOKUP関数を入れたセルを全部選択して、【商品価格】がある列に【形式を選択して貼り付け(値)】でペーストします。

ペーストしたらVLOOKUP関数を入れた方のセルは、DELETEで消します。

シートCはもう使いませんので、削除してもかまいません。
「エクセル 2つのシートの数値の照合を、関」の回答画像4
この回答への補足あり
    • good
    • 0

シートBに記載されている「商品名(商品コード)」と紐づけられた「価格(単価)」が


シートAに記載されている「商品名(商品コード)」に紐づけられた「価格(単価)」と
一致するかを関数を使って示したい。
…で、いいのかな。

シートA、シートBともに、A列に「商品名(商品コード)」、B列に「価格(単価)」が入力されていたとすると、
シートBのC列などシートBのB列と容易に比較できる場所に、VLOOKUP関数を使ってシートAの「価格(単価)」を引っ張ってきたらよい。
=VLOOKUP(A1,シートA!A$1:B$600,2)
これで引っ張ってくることができる。(ついでに600行ほど下へコピー)
その後C列にB列の値と比較して等しくなければセルに色でも付ける書式設定を行えば見やすくなるだろう。
(自分ならC列をコピーしてB列に「値として貼り付け」を問答無用でやってしまうが)

そんなわけでシートBを使いやすいように整形(修正)しよう。たかが600行。
 は な し は そ れ か ら だ 。
(表の作りが悪いのならそれを直してから考えるようにしよう…ということ。基本です)
    • good
    • 0
この回答へのお礼

確かに、元のデータを修正する事から始めないと作業のしようがないのは事実ですね。関数としてはVLOOKUPを使用するしかないようですね。有難うございます。

お礼日時:2015/10/27 23:38

シートA は商品台帳のようなもので、商品コードと価格が入っている場合。


シートB のA列に商品Tの商品コードを入力したとき、B列に商品Tの価格を自動表示させるように作るのはダメですか。
シートB のB列にVLOOKUP関数を作っておけば良いわけですが、こういう使い方とはまた違うものを質問されているのでしょうか。
ご質問文の内容だけでは目的がよくわかりません。
「価格が合っている場合と間違っている場合を確認」して、その結果をどう処理したいのか、によって違ってくると思います。
    • good
    • 0
この回答へのお礼

有難うございます。理解しにくい質問の内容でした。

お礼日時:2015/10/27 23:36

シートAのA列が商品コード、B列が正確な価格。


シートBのA列が商品コード、B列が正しいか間違っているかの価格。
シートAのC列に、VlookUpで、シートBの価格を持ってきて比較するのはダメですか。
あるいは、間違っている箇所を探すというのなら、
シートBのC列に、シートAの正確な価格を持ってくるとか。

どのように確認されようとしていますか。
この回答への補足あり
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aと関連する良く見られている質問

Qエクセル プルダウンの作り方

お世話になります。
エクセルでプルダウンの作り方を教えていただけませんでしょうか?
住所を▼のボタンでクリックしたら【北海道,青森,秋田,岩手・・・】などの選択ができるようにしたいのです。
宜しくお願いします。

Aベストアンサー

メニューから「データ」、「入力規則」、「設定」で「入力値の種類」を「リスト」を選択します。
そうすると「元の値」という表示がでますので、そこで前もって作っておいたリストの範囲を指定します。
多くないのでしたら、そのままそこにカンマで区切って入力しても出来ます。

Qあなたの考える出来る人の習慣の共通点 ダメな人の習慣の共通点を教えて下

あなたの考える出来る人の習慣の共通点 ダメな人の習慣の共通点を教えて下さい。

Aベストアンサー

出来る人は自分だけで抱え込まない。
ダメな人は自分だけで抱え込む。

私の先輩が口癖のように言っています。
自分だけで転ぶな。転ぶなら全員で転べと。

Qエクセルでプルダウンメニューの作り方

  エクセルの画面で、よく三角形を逆さまにした形をクリックするといくつかメニューが出てき、どれかを選べるようになっていますが、その作り方を教えてください。
 会社で人事を担当していますが、三角形(プルダウンボタン)をクリックすると社員氏名一覧が表示され、そこから選択できるようにしたいのです。
 しばらく自力でいろいろやってみましたが、さっぱり見当がつかず、どうやればいいのか分かりませんでした。よろしくお願いします。

Aベストアンサー

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならないでしょうか?
Excel2007の場合は↓のURLが参考になるかもしれません。

http://www.eurus.dti.ne.jp/~yoneyama/Excel2007/excel2007-ny_kis2.html

尚、同一Sheetに「名簿表」を作成する場合は名前定義する必要はなくて
「元の値」の右側の四角をクリックし、リスト表示したいセルをそのまま範囲指定すればOKです。

以上、お役に立てば良いのですが・・・m(_ _)m

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならない...続きを読む

Qエクセルで、A1セルの数値(1,000)を、B1セルに自動で『請求金額

エクセルで、A1セルの数値(1,000)を、B1セルに自動で『請求金額 金1,000 円也』となる様にしたいのですが・・・

Aベストアンサー

今日は。
「セルの書式設定」→「ユーザー定義」で
『"請求金額 金"###,###"円 也"』で良いです
参考までに、画像を添付けます(Excel2003ですが他のバージョンでも同じです)

Qエクセル(Excel) 納品書の作り方【画像修正版

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が見にくかったのでシート<CENTER></CENTER>だけにしました。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルでコピー!
そのまま最後の24行目までコピーしておきます。

F4セルには
=IF(COUNTBLANK(B4:E4),"",D4*E4)
という数式を入れ、F24までオートフィルでコピー!

これでB列に商品番号を入力すればSheet2のデータが反映され、
E列に数量を入力でF列に金額が表示されると思います。

最後に合計金額のF26セルは
=IF(COUNT(F4:F24),SUM(F4:F24),"")
手数料のF27セルは
=IF(F26="","",F26*0.2)

これで何とか形にならないでしょうか?

※ 振込金額の欄は不明ですので手を付けていません。

参考になりますかね?m(_ _)m

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルで...続きを読む

Qエクセルでif関数を使って、別シートにある数字と現在のシートにある数字

エクセルでif関数を使って、別シートにある数字と現在のシートにある数字が一致したら、
OK、一致しなかったNGという関数を組んでいます。
数字はあっているのに、NGという結果がかえってきます。

参照先:sheet1のN3
比較もと:sheet2のN3

=IF(N3='sheet1'!N3,"OK","NG")

どうしたら良いでしょうか。
どなたがご教示くださいませ。

Aベストアンサー

sheet1のN3とsheet2のN3がほんとうに同じ数字ならば、OK と出るはずですね。
NGと出るのは変ですね。
一応念のため、sheet2のN3 をsheet1の空いているセルにコピーして下さい。
今、sheet1の N4 にコピーしたものとして、sheet1の N5 に次の式を入れて
みて下さい。  =N3=N4 これで FALSE と出れば、同じ数値でない
ことになります。(例えば同じ 5 でも片方が文字として入力されているとか)
やってみてください。

Qエクセル(Excel) 納品書の作り方【改めて】

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が貼り付けてあります。商品名は1番以外伏せさせていただいています。
くっつけてありますが、左側がシート1・右側がシート2です。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

画像がいまいちよく見えないのですが、納品書の項目は左から、No、商品番号、商品名、単価、数量、金額でいいのでしょうか(名前は多少違っていても意味があっていればもんだいないです)

でしたら、
C1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,2,FALSE))
D1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,3,FALSE))
E1セルは空白で
F1セルに=IF(D2="","",D2*E2)
といれて、C1からF1までをコピーしてその下の行にタテに貼り付ければ出来ますよ。
おそらくエラーが出たのは、コピーしたときにVLOOKUP関数の最初のセルの指定がずれてしまっているのでは無いかと思いますよ。     

QB/Lの記載について (F.A.F.) (Y.A.S.)

40フィートコンテナのB/Lなのですが

OCEAN FREIGHT (海上運賃)
E.C.H.C.(コンテナ ハンドリンング チャージ)
F.A.F.(?)
Y.A.S.(?)

という記載があるのですが

1. F.A.F.
2. Y.A.S.

1.2.は何の分の金額でしょうか?燃料代とWAR RISKなのでしょうか?

よろしくお願い致します。

Aベストアンサー

購入条件がFOBでの場合、FAF、YASを支払う可能性が発生すると思います。
WAR RISKは(CIFでないのなら)荷受人が任意に海上保険をかけることになりますので、B/Lに記載されることはありません。

【FAF】Fuel Adjustment Factor 燃料割増料率
船舶用燃料費の価格変動を運賃に反映させる割増(引)料金のこと。

【YAS】Yen Appreciation Surcharge 円高損失補填料金
急激な円高による損失を補填するための割増料金のこと。


ご参考になれば幸いです。

Qエクセル2007でプルダウンで選んだものに反応

Excel2007でプルダウンで選んだものに反応して隣のセルが自動入力される方法(エクセル2007)
A1をプルダウンで「猫」「犬」から選べるようにし、「猫」を選んだ場合B1に自動に「111」が、「犬」を選んだ場合B1に自動に「222」と入力されるようにしたいです。
ご教授の程、宜しくお願いします。

Aベストアンサー

VLOOKUP関数での方法です。
(1)別シートに入力文字列と対応コード表を作成。(仮にSheet2のA:B列範囲で順不同)
(2)B1に=IF(COUNTIF(Sheet2!A:A,A1),VLOOKUP(A1,Sheet2!A:B,2FALSE),"")を設定
   入力文字列が存在しない場合は空白としています。

Q洗 脳 されやすい人の共通点。

洗 脳 されやすい人の共通点。
って、なんだと思いますか?

ブラック企業、ネットワークビジネス、新興宗教、自己啓発セミナー系、、、
これら、 洗 脳 の、蔓延の背景、、、
ハマる人には、共通する背景が在るように感じます。

 自己価値観が、アヤフヤで、ある。

 それは、ツマリは、自分で選択し自分の道を切り開いてきたという、経験が極端に少ない、純正培養的(養殖、ブロイラー)イキモノ?な、人達がどっぷりハマりやすい。

(つまり、蔓延の背景には、そう言う人が多い、と、言える。)

と、僕の経験上、では、そうですが、、、他に在りますか?

Aベストアンサー

弱い人、に加えて判断力に欠けている人

宗教や自己啓発→心
精神的に弱く、何かを信じたい、頼りたい気持ち
親や親族からの刷り込み(宗教信者の2世以降など)

ネットワークビジネス→金
今の収入に満足していないが、儲ける手段を知らない、理解していない人

ブラック企業→仕事
辞めた後のこと(現代の就職難や給与など)を考えると辞めることに不安を感じる人

責任感が強い人、自分はこれだけ頑張っているということを認められたい人もいるでしょうし、中にはやりがいのある人も居ると思いますが。
ブラック企業は、他者からの洗脳とは違い、自分で自分を洗脳しているイメージが強いですね。

ざっと考えるとこんな感じです。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング