質問: excelで別シートから値の一致しないデータを抽出する方法 sheet1のa列に a1 123 a2 456 a3 789 のデータが入力されており、sheet2のb列に b1 666 b2 123 b3 888 b4 999 b5 456 b6 888 のデータが入力されている場合に、 下の表のように、sheet1のa4以降のセルにsheet2のb列から ・sheet1のa1~a3に一致しないデータ ・sheet2のb列で重複しないデータ ・降順 の3点の条件で抽出する方法を関数で教えてください。 よろしくお願いします。 sheet1 a1 123 a2 456 a3 789 a4 999 <-ここからsheer2のデータでa1~a3以外の値でsheet2の重複をさけて降順で表示させたい a5 888 a6 666
回答: a4セルに以下の数式を入力します。 =max(index(isna(match(sheet2!$b$1:$b$6,$a$1:$a$3,0))*sheet2!$b$1:$b$6,)) a5セル以下には以下の数式を入力し下方向にオートフィルします。 =large(index((isna(match(sheet2!$b$1:$b$6,$a$1:$a$3,0))*sheet2!$b$1:$b$6),),rank(a4,sheet2!$b$1:$b$6)+countif(sheet2!$b$1:$b$6,sheet1!a4)) 配列数式なので、エラー処理の数式を含めるとると数式が複雑になるだけでなく計算負荷加が高くなる恐れがあるので省略していますが、もし必要なら条件付書式やif関数で適宜エラー値を表示しない設定にしてください(現在は該当データがないとエラー表示となります)。