Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 11 Pro : Microsoft 365)
日付に一致した行を表示したい
投稿日時: 23/10/05 18:05:45
投稿者: 水流爽翔

お知恵を貸してください。
 
指定した発送日の情報をシートBに表示したい。
【シートA】
名前 郵便番号 住所 電話番号 商品 発送日
AAA 111-1111 東京都 09011111111 野菜1 2023/10/3
BBB 111-1112 千葉県 09011111112 野菜2 2023/10/4
CCC 111-1113 東京都 09011111113 野菜1 2023/10/4
DDD 111-1114 大阪府 09011111114 野菜3 2023/10/5
EEE 111-1115 埼玉県 09011111115 野菜1 2023/10/5
 
【シートB】※期待している完成系
・A1セルに指定した発送日を入力します。(例えば2023/10/4)
名前 商品 発送日
BBB 野菜2 2023/10/4
CCC 野菜1 2023/10/4
 
INDEX関数とMATCH関数でイケるかと思いましたが私の知識では完成系に辿り着けず・・・
 
皆様のお知恵をお貸しください。
宜しくお願いします。

回答
投稿日時: 23/10/05 18:40:47
投稿者: んなっと

●シートA
 
   A     B    C      D   E     F
1 名前 郵便番号  住所  電話番号  商品   発送日
2  AAA 111-1111 東京都 9011111111 野菜1 2023/10/3
3  BBB 111-1112 千葉県 9011111112 野菜2 2023/10/4
4  CCC 111-1113 東京都 9011111113 野菜1 2023/10/4
5  DDD 111-1114 大阪府 9011111114 野菜3 2023/10/5
6  EEE 111-1115 埼玉県 9011111115 野菜1 2023/10/5
 
●シートB
 
      A   B     C
1 2023/10/4         
2    名前  商品   発送日
3    BBB 野菜2 2023/10/4
4    CCC 野菜1 2023/10/4
 
A3
=FILTER(CHOOSECOLS(シートA!A2:F500,1,-2,-1),シートA!F2:F500=A1,"")

回答
投稿日時: 23/10/05 19:39:26
投稿者: んなっと

あとこれも。
 
=FILTER(CHOOSECOLS(シートA!A2:F500,XMATCH(A2:C2,シートA!A1:F1)),シートA!F2:F500=A1,"")

回答
投稿日時: 23/10/05 21:57:34
投稿者: Mike

[フィルタオプションの設定]に依る方法です。
SheetA
  A   B     C    D    E
1 名前 郵便番号 電話番号  商品 発送日
2 AAA 111-1111 09011111111 野菜1 2023/10/3
3 BBB 111-1111 09011111112 野菜2 2023/10/4
4 CCC 111-1112 09011111113 野菜1 2023/10/4
5 DDD 111-1113 09011111114 野菜3 2023/10/5
6 EEE 111-1114 09011111115 野菜1 2023/10/5
 
SheetB                   SheetB
   A   B  C   D    E         A   B  C   D    E
1 2023/10/4   名前 商品 発送日      1 2023/10/4   名前 商品 発送日
2                 →→→→ 2        BBB 野菜2 2023/10/4
3  FALSE             →→→→ 3  FALSE    CCC 野菜1 2023/10/4
 
SheetB に於いて、
1.セル A3 に式 =SheetA!E2=A$1 を入力しておく。
 ̄ ̄ちなみに、セル A2 は空白のままに放置しておく(←これ、必須ですッ!)
2.仮にセル A2:A3 を選択⇒[データ]⇒[並べ替えとフィルタ <詳細設定>]⇒何やら警告メッセージが
 ̄ ̄表示されるが、“知らぬ存ぜぬ”の一点張りで[OK]をクリック⇒表示された[フィルタオプションの設定]
 ̄ ̄メニューに於いて、[抽出先]として“指定した範囲”に目玉入れ⇒[リスト範囲]ボックス内にマウス
 ̄ ̄カーソルを置いて、範囲 SheetA!A1:E6 をドラッグ選択して、元々在った $A$2:$A$3 を、
 ̄ ̄SheetA!$A$1:$E$6 に上書き⇒[検索条件範囲]ボックス内にマウスカーソルを置いて、改めて
 ̄ ̄SheetB の範囲 A2:A3 をドラッグ選択⇒[抽出範囲]ボックス内にマウスカーソルを置いて、
 ̄ ̄SheetB の範囲 C1:E1 をドラッグ選択
 
[フィルタオプションの設定]が下記のようにそれぞれ指定したとおりになっているはず
 ̄ ̄抽出先 ̄ ̄ ̄● 指定した範囲
 ̄ ̄リスト範囲 ̄ ̄ ̄SheetA!$A$1:$E$6
 ̄ ̄検索条件範囲 SheetB!$A$2:$A$3
 ̄ ̄抽出範囲 ̄ ̄ SheetB!$C$1:$E$1
 
最後に、[OK]を「エイヤッ!」と憎々し気に叩き付けて、上図の右側の SheetB が得られる次第ッ!

投稿日時: 23/10/06 13:14:09
投稿者: 水流爽翔

>んなっと様
御回答ありがとうございます。
当方、Microsoft 365ですが、何故かCHOOSECOLS関数が使えず・・・
バージョン情報をみると「バージョン2105」と記載はありますが。。。
 
>Mike様
ご丁寧な説明ありがとうございます。
現在まだ上手くいってませんが取り急ぎお礼まで。
実現出来たら再度コメントお書きします。

回答
投稿日時: 23/10/06 13:32:07
投稿者: んなっと

では
=IF(A1="","",FILTER(FILTER(シートA!A2:F500,{1,0,0,0,1,1}),シートA!F2:F500=A1,""))
 
とか
=IF(A1="","",FILTER(FILTER(シートA!A2:F500,ISNUMBER(XMATCH(シートA!A1:F1,A2:C2))),シートA!F2:F500=A1,""))

投稿日時: 23/10/06 15:01:47
投稿者: 水流爽翔

>んなっと様
ありがとうございます!
実現できました。素晴らしい!
 
>Mike様
こちらもできました!
機能の活用の幅広さを実感しました・・・
 
おそらくまた別パターンでの質問が作成されると思いますがその際はまたアドバイス下さい。
ありがとうございました。