[[20230404140130]] 『INDIRECTで配列参照』(ユーリ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『INDIRECTで配列参照』(ユーリ)

お世話になります。
INDIRECT関数で配列を参照させたいのですが、
エラーとなってしまい困っております。

【元表の値】
I3=水
J3=木
L3=金

【?@前提(ADDRESS関数)】
=ADDRESS(3,MATCH($D4:D$100,$H$2:$ABI$2)+8,4,1)
(ADDRESS関数の結果)
I3
J3
L3

【?A前提をINDIRECTで参照】
=INDIRECT(ADDRESS(3,MATCH($D4:D$100,$H$2:$ABI$2)+8,4,1))
(INDIRECT関数の結果)
#VALUE! →期待値:水
#VALUE! →期待値:木
#VALUE! →期待値:金

?Aを実行した結果としては、ADDRESS関数で取得しているI3,J3,L3セルの
値を得たいのですが、エラーとなってしまいました。
INDIRECT関数で配列を参照することはできないのでしょうか?

なお、配列を用いない場合は期待値が取得できております。

=INDIRECT(ADDRESS(3,MATCH($D4,$H$2)+8,4,1))
(INDIRECT関数の結果)

手元のワークシートで作成している式をそのまま記載しましたので、
"$D4:D$100"など第三者にはわかりにくい記載となっており申し訳ありません。

< 使用 Excel:Microsoft365、使用 OS:Windows10 >


 確認だけ

 1)D4:D100 と H2:ABI2 には具体的にどんな値が入力されているのか?
 2)その式をどのセルに入力するのか?
 3)INDEX〜MATCH では何か問題あるのか?
   ※INDIRECT も ADDRESS も使わない

 とりあえず以上です
(笑) 2023/04/04(火) 19:00:07

 文字列がほしいときは T(   )、数値がほしいときはN(   )でくくれば一応可能です。
   D  E F G  H  I  J  K  L  M  N 
2         3/1 3/2 3/3 3/4 3/5 3/6 3/7 
3         月  火  水  木  金  土  日 
4 3/1 火                     
5 3/3 木                     
6 3/6 日                     
7 3/7 月                     
E4
=T(INDIRECT(ADDRESS(3,MATCH(D4:D100,H2:ABI2)+8)))
※普通はこっちを使います。
=INDEX(H3:ABI3,XMATCH(D4:D100,H2:ABI2)+1)

(んなっと) 2023/04/05(水) 08:49:09


 追加で確認

 4)具体的なデータを提示した上で、やりたいことも説明してください。
 ・MATCH が「完全一致検索」ではないのは合っているのか?
  ・検索は「H列」から、返したい値は「I列」からで合っているのか?

 D列の「翌日の曜日」を表示したいだけなら

 E4 =TEXT(D4:D100+1,"aaa")

 以上
(笑) 2023/04/05(水) 10:02:20 字句訂正 14:27

んなっと様、笑さま

お忙しいところ、回答いただき誠にありがとうございます。
回答いただいた内容を確認し、質問として記載した内容が非常に不足している事を痛感しました。
せっかく回答をいただいても、この質問からでは本当に解消したい問題を解決できない事に気が付きましたので、大変申し訳ありませんが、改めて別途質問投稿させていただきます。
そちらでも、もしご協力いただけましたら、大変たすかります。

こちらのスレッドで回答いただいた内容も、今後生かしていければと思っております。

(ユーリ) 2023/04/05(水) 11:27:59


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.