• ベストアンサー

 エクセル関数を教えて下さい。

 エクセル関数を教えて下さい。 Aの表にある入荷数だけをBの表に抽出したいのですが 関数が分かりません。マクロの知識がないので、関数を教えて下さいませんか。Bに抽出す る時に「店番」・「品目番号」を入力すると入荷数のみがBの方に入るようにしたい。

この投稿のマルチメディアは削除されているためご覧いただけません。

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

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

No.1です! 補足の説明にお伺いしました。 >COLUMN(A1)*2-1  のところがどのようないみなのか、特に *2-1については皆目わかりません。どのような意味か教えて下さいませんでしょうか。 Sheet2のB2セルの数式 =IF(COUNTBLANK($F2:$G2),"",INDEX(Sheet1!$E$2:$L$100,MATCH($F2&$G2,Sheet1!$M$2:$M$100,0),COLUMN(A1)*2-1)) の COLUMN(A1)*2-1)) の部分は「INDEX関数の何列目か?」を検索する数式になります。 INDEX関数でSheet1のE2~L100セルまでを範囲指定していて、 その何列目を表示するか?という数式ですが、 ここでSheet2の1行目に各人の氏名がありその人の入荷数を表示したいわけですので、 Sheet1の表をみると、INDEX関数で範囲指定した奇数列に各人の入荷数が入っていますよね? (E列から範囲指定していますので、E列が1列目!ということになります) ということはオートフィルで列(右)方向にコピーするたびに、 1列目・3列目・5列目・・・と表示させたいわけです。 ここでCOLUMN(A1)とはA列の列番号なので、「1」となります。 これを隣の列にオートフィルでコピーすると、 COLUMN(B1)=2  COLUMN(C1)=3・・・ となります。 ここで見てもらいたいのは COLUMN(A1)*2-1 としていますので、 COLUMN(A1)*2-1=1 これを列方向にオートフィルでコピーすると COLUMN(B1)*2-1=3 COLUMN(C1)*2-1=5  といった具合に奇数番号を選べます。 つまり、COLUMN(A1) = COLUMN(A100) でも列番号は「1」なのです。(行番号は何でもかまいません) 入力するときにごく簡単にしていだけで(A1)としています。 尚、下へオートフィルでコピーする場合は「行番号」が必要になることが多いので ROW(A1) などとすることが多いです。 この場合はA・B・・・という列番号より、「1」の行番号が必要になります。 すなわち、ROW(A1)=ROW(B1)=ROW(C1)・・・←これらはすべて「1」になります。 そして、余計なお世話だと思いますが、前回のSheet2に表示される数値でSheet1が空白の場合は「0」が表示されてしまいますので、 当方使用のExcel2003の場合ですが、 メニュー → ツール → オプション → 「表示タブ」で「ゼロ値」のチェックを外しておけば 「0」は表示されなくなります。 以上、長々と要らぬお世話の内容だったかもしれませんが、 参考になれば幸いです。m(__)m

ihuyi
質問者

お礼

  御礼が遅れて申し訳ありません。メールアドレスの変更をしていて送信ができなくなり迷惑をお掛け致しました。  なお、ご回答下さいましたこと、大変助かりました。ありがとございました。

その他の回答 (1)

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

こんばんは! 画像が小さすぎて内容が理解できません。 画面を400%にアップしてみましたがかろうじて読み取れるものだけを↓の画像のようにしてみました。 こんなことかな?と思いながら投稿しています。 Sheet1に作業用の列を設けて、作業列M2セルに =A2&C2 という数式をいれ、オートフィルでずぃ~~~!っと下へコピー Sheet2のA2セルに =IF(COUNTBLANK(F2:G2),"",INDEX(Sheet1!$D$2:$D$100,MATCH(F2&G2,Sheet1!$M$2:$M$100,0))) B2セルに =IF(COUNTBLANK($F2:$G2),"",INDEX(Sheet1!$E$2:$L$100,MATCH($F2&$G2,Sheet1!$M$2:$M$100,0),COLUMN(A1)*2-1)) という数式をいれ、列方向にE2セルまでオートフィルでコピー 最後にA2~E2セルを範囲指定し、E2セルのフィルハンドルでオートフィルで下へコピーすると 画像のような感じになります。 (数式はSheet1の100行目まで対応できるようにしています。) 以上、お役に立てばよいのですが 大きく外しているかもしれませんので、その場合は無視してください。m(__)m

ihuyi
質問者

補足

できました、誠にありがとうございます。但し、お聞きしていいですか、今後のために、Sheet2のA2セルのところの最後の関数部分ですが、 COLUMN(A1)*2-1  のところがどのようないみなのか、特に *2-1については皆目わかりません。どのような意味か教えて下さいませんでしょうか。

関連するQ&A