
XLOOKUP関数を複数条件にする方法は「Excel」と「Google スプレッドシート」で異なるため、それぞれ見出しを分けて解説しています。行と列の2つの条件を指定してクロス集計する方法についても解説しているので、ぜひ参考にしてみてください。
XLOOKUP関数の使い方

XLOOKUP関数は「検索範囲」から「検索キー」を検索し、「結果の範囲」から値を返します。
例:=XLOOKUP(B2,B5:B8,C5:C8)
このほか3つの省略された引数がありますが、基本的には省略でOKです。
XLOOKUP関数の引数:(検索キー, 検索範囲, 結果の範囲, [見つからない場合の値], [一致モード], [検索モード])

一致する検索キーが複数ある場合、最初に一致した値を結果の範囲から返します。
省略された引数について詳しく知りたい方は、コチラをご参照ください。
【エクセル】XLOOKUP関数を複数条件にする方法

産地が「長野」で商品名が「りんご」の、2つの条件と一致する値を抽出します。

ポイントは、「検索キー同士」と「検索範囲同士」を「&」で結合することです。
例:=XLOOKUP(A2&B2,A5:A8&B5:B8,C5:C8)
それぞれの検索キーに対応する検索範囲を指定し、結果として抽出する範囲を1つ指定します。
XLOOKUP関数の引数:(検索キー, 検索範囲, 結果の範囲,[見つからない場合の値], [一致モード], [検索モード])
【スプレッドシート】XLOOKUP関数を複数条件にする方法

産地が「長野」で商品名が「りんご」の、2つの条件と一致する値を抽出します。

「検索キー同士」と「検索範囲同士」を「&」で結合し、検索範囲のみ中括弧で囲うのがポイントです。
例:=XLOOKUP(A2&B2,{A5:A8&B5:B8},C5:C8)
それぞれの検索キーに対応する検索範囲を指定し、結果として抽出する範囲を1つ指定します。
XLOOKUP関数の引数:(検索キー, 検索範囲, 結果の範囲,[見つからない場合の値], [一致モード], [検索モード])

最後に [Ctrl]+[Shift]+[Enter] を押し、先頭にArrayFormula関数を追加します。
例:=ArrayFormula(XLOOKUP(A2&B2,{A5:A8&B5:B8},C5:C8))
ArrauFormula関数は配列数式から返された値を、複数行または複数列に表示させます。今回のように、非配列関数で配列を使用する場合にも使えます。
【以上・以下を含む】XLOOKUP関数を複数条件にする方法

商品名が「りんご」で、価格が「300」より大きい産地を抽出します。

検索キーは「1」とし、検索範囲に2つの条件を掛け合わせます。
例:=XLOOKUP(1,(C5:C8>300)*(B5:B8=”りんご”),A5:A8)

スプレッドシートの場合 [Ctrl]+[Shift]+[Enter] で、先頭にArrayFomula関数を追加します。
例:=ArrayFormula(XLOOKUP(1,(C5:C8>300)*(B5:B8=”りんご”),A5:A8))

検索キーを「1」としているのは、2つの条件の乗算結果を検索範囲とするためです。
論理式はTRUEなら 1 、FALSEなら 0 を返すので、全て一致する場合のみ 1 を返します。
【別シート】XLOOKUP関数を複数条件にする方法

まず結果の抽出先のシートを開き、XLOOKUP関数の検索キーとカンマまで入力します。
次に、検索範囲になるシートをクリックします。

そのまま検索範囲を選択すると、自動的に数式欄にシート名と検索範囲が入ります。
最後にカンマで区切って結果の範囲も選択します。
例:=XLOOKUP(A2&B2,データ!A2:A5&データ!B2:B5,データ!C2:C5)

[Enter]で確定すると、最初に数式を入力したシートに値が抽出されます。
なおスプレッドシートの場合は検索範囲を中括弧で囲い、先頭にArrayFormula関数を追加します。
例:=ArrayFormula(XLOOKUP(A2&B2,{‘データ’!A5:A8&’データ’!B5:B8},’データ’!C5:C8))
ArrayFormula関数は [Ctrl]+[Shift]+[Enter] で追加できます。