• 締切済み

EXCELの質問です。

Excelの質問です。 添付した画像のように2つのbookを使い、 book1のA列に8ケタの番号、 book2のA列に3ケタの番号とそれに対応する数値がB列に入っています。 これを使い、book1のB列に book1の8ケタの番号にBook2の3ケタの番号が含まれる場合(上3ケタで)、それに対応するB列の数値をbook1のB列に入るような数式を作っていただきたいです。 IF(COUNTIFを使ってやってみたのですが、Book2の3ケタを複数選択にするとできなくなってしまいます。 また、もしできるならば、 検索条件にもうひとつ加え、62N**6**という3ケタ目も指定できればよりうれしいです。 3ケタ目は5,6の2つのうちいずれかという風にしていただきたいです! なので、 62N**5**、62N**6**の場合は2 62N**8**などのほかの数字が入る場合は0 714**5**、714**6**の場合は5 714**9**などのほかの数字が入る場合は0 ということです。 わかりにくくてもうしわけありません。 みなさんのお力を貸していただければとおもいます。 どうぞよろしくお願いします!!!!

みんなの回答

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんばんは! >添付した画像のように2つのbookを使い・・・ 別Sheetではなく、別Bookで間違いないのですね? 画像の左側が「Book1.xlsx」で右側が「Book2.xlsx」というブック名だとして、 どちらのBookもSheet1にデータがあるとした場合です。 画像ではBook1のSheet1、3行目からデータがあるようなので、 B3セルに =IF(A3="","",IF(AND(COUNTIF([Book2.xlsx]Sheet1!A:A,LEFT(A3,3)),OR(MID(A3,6,1)={"5","6"})),VLOOKUP(IF(ISTEXT(A3),LEFT(A3,3),LEFT(A3,3)*1),[Book2.xlsx]Sheet1!A:B,2,0),0)) という数式を入れフィルハンドルで下へコピーしてみてください。 ※ 画像を拝見すると同一Book内の別Sheetのようにも見えますので、 左側がSheet1・右側がSheet2とした場合は Sheet1のB3セルに =IF(A3="","",IF(AND(COUNTIF(Sheet2!A:A,LEFT(A3,3)),OR(MID(A3,6,1)={"5","6"})),VLOOKUP(IF(ISTEXT(A3),LEFT(A3,3),LEFT(A3,3)*1),Sheet2!A:B,2,0),0)) という数式を入れてみてください。 ※ この画面から上記数式をドラッグ&コピー → B3セルを選択 → 数式バー内に貼り付け → Enter の方法が間違いないかもしれません。m(_ _)m

Noai
質問者

お礼

tom04さん ご丁寧に本当にありがとうございます!!!!! とても助かりました!!

関連するQ&A