プロが教える店舗&オフィスのセキュリティ対策術

Excelファイル1に平成24年度版の商品の縦書き一覧表があります。(A2~A100までが商品名)
同じくExcelファイル2に平成23年度版の商品の縦書き一覧表があります。(A2~A100までが商品名)

Excelファイル1における平成24年度の商品一覧表の各商品の横のセル(B2~B100)に、平成23年度にも販売していたのであれば「23」という数字を記入し、平成23年度に販売していなければ(平成24年度からの発売であれば)「24」という数字を記入したいとします。

簡単な方法としてはExcelファイル2のB2~B100に23を記入し、Excelファイル1のB2に
VLOOKUP関数を入力し、Excelファイル1と2のA列が一致する場合、Excelファイル2のB列(23)を返し、一致しないセルのエラーを削除して24を記入するという方法が考えられます。

しかし、一つの関数入力で23年度の一覧表に一致する商品の隣のセルに23、23年度に販売されていなければ24という値を返すようにしたいと思います。

IF関数の中の論理式の部分をVLOOKUPに置き換えて入れ子にし真なら23、偽なら24とすればよいのかと思ったのですが、エラーになります。

どのような数式をつくればよいのでしょうか。

A 回答 (3件)

>平成24年度の商品一覧表の各商品の横のセル(B2~B100)に、平成23年度にも販売していたのであれば「23」という数字を記入し、平成23年度に販売していなければ(平成24年度からの発売であれば)「24」という数字を記入したいとします。



添付画像より説明します <(_ _)>
「平成24年度の商品」ブック名の一覧表(A列)の隣のB列のセルB2に次の式を入れます
セルB2 =IF(ISNA(MATCH(A2,[平成23年版の商品.xlsx]Sheet1!$A$2:$A$10,0)),24,23)

psy7777さんの示されている範囲を数式にすると次の式になります
セルB2 =IF(ISNA(MATCH(A2,[平成23年版の商品.xlsx]Sheet1!$A$2:$A$100,0)),24,23)
「VLOOKUPで一致した場合に特定の数字」の回答画像3
    • good
    • 0

>IF関数の中の論理式の部分をVLOOKUPに置き換えて入れ子にし真なら23、偽なら24とすればよいのかと思ったのですが、エラーになります。


どの様な式なのでしょうか?これを提示していただければ適切な回答が得られると思いますが
既に、回答済みなので、別案です。
>簡単な方法としてはExcelファイル2のB2~B100に23を記入し、Excelファイル1のB2に
>VLOOKUP関数を入力し、Excelファイル1と2のA列が一致する場合、Excelファイル2のB列(23)を返し、>一致しないセルのエラーを削除して24を記入するという方法が考えられます。
考え方として
Excelファイル1のB2に Countif関数を入力して、同じ商品名がなければ 0 あれば 1以上 なので
あれば23 なければ24 と表示させる方法が考えられますよね

=IF(COUNTIF(平成23年度版の商品!A2:A100,A2)>0,23,24)
省略して
=IF(COUNTIF(平成23年度版の商品!A2:A100,A2),23,24)
といった書き方も可能
    • good
    • 0

24年の商品一覧に


23年の計算式=24年の計算式にすると
一致するかしないかの答えが返ってきます。

=VLOOKUP(B1,23年のデータ範囲,1,FALSE)=VLOOKUP(B1,24年のデータ範囲,1,FALSE)

TRUEの時に「23」、FALSEの時に「24」と返すなら

=IF(VLOOKUP(B1,23年のデータ範囲,1,FALSE)=VLOOKUP(B1,24年のデータ範囲,1,FALSE)=TRUE,"23","24")

TRUEの時は、23年データにあり、FALSEの時は、23年データにないということになります。

データ範囲や列番号は、修正してください。

お試しください。
    • good
    • 0

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