• ベストアンサー

エクセル2000で

表から値を参照したいのですがVLOOKUPでは無理みたいなので良い方法を教えてください たとえばA社でかつ1月ならば「2」という値を参照する感じです。よろしくお願いします (見にくくてすいません)   A  B  C   1 A社 1月 2 2 A社 3月 33 3 B社 1月 4 4 B社 4月 20 5 C社 7月 25

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

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 社名をE1、月をF1に入力するとして、値を表示させるに、 =VLOOKUP(F1,IF(A1:A5=E1,B1:C5),2,FALSE) と入力して、[Ctrl]+[Shift]+[Enter]で確定します。 (数式の両端に「{}」が付いて、配列数式になります。) なお、エラー処理はしてません。 他の方法としては、社名と月の両方が同じデータがないという前提で、 =SUMPRODUCT((A1:A5=E1)*(B1:B5=F1),C1:C5) です。(これは通常どおり[Enter]で確定)

kunimaru3
質問者

お礼

すいません 大変遅くなりましたがとても役に立ちました 配列はいままでなじみがありませんでしたが 今後参考にさせていただきます

その他の回答 (1)

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

VLOOKUP関数を強いて使えば使えると思う。 それは検索列を正しく作れば良いです。 A社のA列と1月のB列を&で(値)結合します。 その際「A社1」+「1月」と「A社」+「11月」が 同じになるようなケースを防ぐため、スペースを入れて くっ付けた後に、B列の内容が始まる桁を固定するように 結合することです。 (データ)A1:B3 興和 1月 武田工業 2月 曙 12月 (関数式)C1 =A1&MID("          ",1,10-LEN(A1))&B1 " "の長さは最大長を取る。 スペースを連ねる代わりに、REPT関数を使う手もある。 ただし社名部分は、全文字数入れなくても他の行と同じものが出ない文字数で(全行)端折って可。 式を下へ複写する。 (結果)C1:C3 興和        1月 武田工業      2月 曙         12月 <--10字---> 表示する時「P」のつかないフォントで表示してみないと 月数字のスタートが揃わずあれッと思いますので注意。

kunimaru3
質問者

お礼

なるほど &ってありましたね ありがとうございます

関連するQ&A

専門家に質問してみよう