
誰かが助けてくれるかどうかはわかりませんが、試してみようと思いました...
データ シートから情報を取得するための数式を作成しようとしています。データ シートには大量の情報が含まれており、店舗の場所、顧客の場所、情報の種類 (収益、GP1、GP2 情報) に基づいてデータが分割されています。
要約シートにコピーされたときに、該当する店舗の場所、顧客の場所、情報の種類を自動的に確認し、それに応じて取得する動的な数式が必要です。現在、数式を次のように設定しています。
=INDEX('[収益性分析 FY13.xlsx]データシート S13'!$B$8:$EH$85,MATCH($A17,('[収益性分析 FY13.xlsx]データシート S13'!$E$8:$E$85),0),MATCH(1,$B17='収益性分析 FY13.xlsx]データシート S13'!$B$4:$EH$4)*(J14='[収益性分析 FY13.xlsx]データシート S13'!$B$7:$EH$7),0)
この考え方は、数式がB8 - EH85
データ シートのセル内を検索し、セルに指定された垂直検索値 (店舗の場所) に基づいて情報を取得しA17
、顧客の場所 (セル B17) と情報の種類 (セル J14) に基づく水平検索値が揃っているというものです。
この数式の問題は、複数の条件 (水平方向の参照) の側面にあるようです。数式を言い換えて正しく機能させる方法について、何かアドバイスはありますか?
答え1
括弧に関するいくつかの問題を除けば、数式は問題ないように見えます。このバージョンを試してください。
=INDEX('[Profitability Analysis FY13.xlsx]Data Sheet S13'!$B$8:$EH$85,MATCH($A17,'[ Profitability Analysis FY13.xlsx] Data Sheet S13'!$E$8:$E$85,0),MATCH(1,($B17=' Profitability Analysis FY13.xlsx] Data Sheet S13'!$B$4:$EH$4)*(J14='[Profitability Analysis FY13.xlsx] Data Sheet S13'!$B$7:$EH$7),0))
確認が必要ですCTRL+ SHIFT+ENTER
簡単に言うと、一般的な形式は
=INDEX(Matrix,MATCH("x",row_labels,0),MATCH(1,("y"=headers1)*("z"=headers2),0))
それはあなたが上に持っているものです
....または、INDEX
「配列エントリ」を回避するために、汎用バージョンで別の関数を追加することもできます。
=INDEX(Matrix,MATCH("x",row_labels,0),MATCH(1,INDEX(("y"=headers1)*("z"=headers2),0),0))