アプリ版:「スタンプのみでお礼する」機能のリリースについて

例の添付画像のセル A2:D8が一つのデータベースになっています。

そのデータベースを利用してF2:I8に同様のデータベース(内容は同じ 商品コードの順序違い)を作りたいです。

Vlookup関数の場合、
G3セルにVlookup関数(=VLOOKUP($F3,$A$3:$D$8,2,FALSE)を入れる。
同様にH3セル、I3セルも列番号だけそれぞれ 3、4とする。

その後、I3の右下のフィルハンドルをダブルクリックすると、F2:I3のデータベースが完成する。

しかしXlookupのスピル機能を使ってG3:I3を表示させた場合、Vlookup同様のI3セルのフィルハンドルが使えません。
同じことをするにはG3セルの右下を下までドラッグするしかありません。
(今知っている知識では。)

XlookupでVlookup同様のフィルハンドル機能に類する方法はないでしょうか?
行が多くなると対応が難しくなります。

よろしくお願いします。

「エクセル関数のXlookupのフィルハン」の質問画像

A 回答 (3件)

XLOOKUP関数は、縦横両方に対応したスピルはできません。


https://excel-ubara.com/excel1/EXCEL634.html#sec …
どうしてもXLOOKUP関数とスピルにこだわるなら、以下での
設定で対応してはいかが。

今回の場合なら行が増える可能性があっても、列は4列単位に
なるので、G3セルに縦方向のスペルを設定して、H3とI3へと
ドラッグすることで自動でスピルがされますので、この方法で
対応します。
 =XLOOKUP($F$32:$F$8,$A:$A,B:B)
これをG3セルに入れて[ Enter ]キーでスピルさせます。
確定したら、G3セルからI3セルにドラッグで、スピル範囲が、
I列まで拡張します。

F列の範囲が変更されたら、$F$8の行数を増やす必要がある
ことの作業が面倒なら、初めから範囲を広めにしておきます。
セルに値がない場合、G列~I列まで0が表示されてしまうので
IF関数で対応しておきます。
 =IF($F$3:$F$100="","",XLOOKUP($F$3:$F$100,$A:$A,B:B))


INDEX関数を使ったほうが、全体にまとめてスピルできるので、
No.2の回答者さんの方法を支持しますね。
    • good
    • 0
この回答へのお礼

とても勉強になりました。
ご指摘頂いたURLは知りませんでした。
何でもXLOOKUP関数が上回っていると思っていたのですが、
そうではなかったことに気づけました。
本当にありがとうございました。

お礼日時:2022/09/20 23:47

こんばんは



スピル機能が使える環境なら(私は違いますけれど)、全体にまとめてスピルさせれば、フィルハンドル云々も不要になるのではないでしょうか?

例えば、G2セルに
=INDEX(A3:D8,MATCH(F3:F8,A3:A8,0),COLUMN(B1:D1))
を入力すると、全体にスピルしたりしませんか?
    • good
    • 0
この回答へのお礼

本当に感謝します。
INDEX+MATCH関数が解決方法だったんですね。
今回は№3の方がURLの解説も掲載して頂いたのでそちらをベストアンサーにさせて頂きました。

お礼日時:2022/09/20 23:51

Excel新関数!VLOOKUP関数の進化版! XLOOKUP関数を徹底解説します!良いスタートダッシュができるように今のうちに見ておくことをおすすめします! - YouTube


    • good
    • 0
この回答へのお礼

ありがとうございます。
私も拝見しました。

お礼日時:2022/09/20 23:25

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!