[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『関数で別シートに表示させる』(mako)
シート1に関数でリンクのように自動的に表示できないか?
色々と考えたのですが、なかなか思いつかなくて
書き込みさせて頂きました。
VLOOKUPなど試したのですが、上手くいきませんでした。
参照するシート2は別にあって、その中に表があり、
B列に名前、C列に数量、D列に期限、があります。
H列に1を入力(チェック)したB列の名前を
シート1のC列に反映させたいのです。
チェックする物は複数あるので上から順に表示させたいです。
エクセルの関数で処理することは可能でしょうか?
< 使用 Excel:Excel2010、使用 OS:Windows10 >
Sheet1!C2: =IFERROR(INDEX(Sheet2!$B$2:$B$16,SMALL(IF(Sheet2!$H$2:$H$16=1,ROW(A1:A15),""),ROW(A1))),"")
「Ctrl + Shift + Enter」キーで式を入力します。(配列数式)
====================== 下に必要数コピーします。
実データが100行目まで入力されている場合には
「ROW(A1:A15)」を「ROW(A1:A99)」に変更します。
(メジロ) 2018/01/27(土) 08:21
入れてみたのですが、上手くいきません。
表示はされるのですが、チェックを付けたものじゃないのが出ます。
配列数式難しいですね・・・
現在、シート2H列で7個選んでるのですが、シート1では5個しか表示されず、
チェック(1)を付けたものとは違う物が表示されています。
シート2でチェック(1)を付けたものが
シート1にリアルタイムで反映して欲しいのです。
どこがおかしいのでしょうか・・・・
(mako) 2018/01/27(土) 19:17
シート2は注文予定がどんどん入ってくるので、
下に1000以上増えていきます。
「ROW(A1:A15)」を「ROW(A1:A999)」でいいんですよね?
(mako) 2018/01/27(土) 19:26
>=IFERROR(INDEX(Sheet2!$B$2:$B$16,SMALL(IF(Sheet2!$H$2:$H$16=1,ROW(A1:A15),""),ROW(A1))),"") ~~~~~~ 波線部も「絶対参照」にしないとダメです。
さらに言うと ↓ の方がわかりやすいでしょう。
=IFERROR(INDEX(Sheet2!B:B,SMALL(IF(Sheet2!$H$2:$H$1000=1,ROW($A$2:$A$1000),""),ROW(A1))),"") ~~~ ~~~~~~~~~~~~ ~~ (1) (2) (3)
(1)範囲を列全体にする (2)データ範囲に合わせる (3)A1のままにしておく
参考まで (笑) 2018/01/27(土) 22:59
その部分も絶対参照だったんですね(^^;
メジロさん、笑さん、
解決しました。ありがとうございました。
(mako) 2018/01/27(土) 23:34
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.