[[20240407200025]] 『3ヶ月にわたる期間の真ん中の月を抽出するには』(きゅうり) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) |

| 全文検索 | 過去ログ ]

 

『3ヶ月にわたる期間の真ん中の月を抽出するには』(きゅうり)

お世話になっております。

下記内容について皆様の御力を貸していただけますでしょうか。

お店のフェア実施状況を一覧にして、ピボットテーブルで月別フィルターをかけたいと考えています。
現在は下記のように入力しており、期間が3ヶ月に渡る箇所があります。

A /B /C
店舗名 /開始期間 /終了期間
東京店 /4/1 /6/31

このような場合、4月、5月、6月が実施期間になるのですが、
それぞれの月でフィルターをかけてフェア実施期間がわかる、というような方法はありませんでしょうか?

語彙力がなくて申し訳ございません...。

どなたか教えて頂けますと幸いです。
よろしくお願いします。

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


>語彙力がなくて申し訳ございません...。
それどころかタイトルと質問内容が違いますけど。
>月別フィルターをかけたいと考えています。
>期間が3ヶ月に渡る箇所があります。
タイトルでいくとフィルターで5月を抽出したいということですか。
それは無理でしょ。
>フェア実施期間がわかる、というような方法はありませんでしょうか?
D列にフェア実施期間とでも記入しておけばいいでしょう。

(???) 2024/04/08(月) 08:43:07


 ちょっとお訪ねしますが、1ヶ月間とか2カ月間ならできたんですか?

(半平太) 2024/04/08(月) 08:45:22


コメントいただきましてありがとうございます。

1か月、2か月なら単純に期間の月だけをMONTH関数で抜き出せばよいかなと思っていましたが、
フィルターをかけるには同一列でないとできないよなぁ…とこちらも頭を抱えている次第です。
(きゅうり) 2024/04/08(月) 11:34:33


 集計フィールドを使うにしても、使える関数が限定されていてMonthは使えないようです。
 既に指摘があるように、
 >D列にフェア実施期間とでも記入しておけばいいでしょう。
 元データに列を追加するのがよいと思います。

 # PowerQueryや Power Pivotでは可能かもしれません。
 # ピボットテーブルに慣れているなら、上記の案がお薦めです。

(xyz) 2024/04/08(月) 13:48:04


 >フィルターをかけるには同一列でないとできないよなぁ
 ですよねー。

 (1) D2セル =ROW()
 (2) E2セル =DATEDIF(EOMONTH(B2,-1),EOMONTH(C2,0)+1,"m")
 (3) F2セルに「1」と手入力
   F3セル =SUM(F2,E2)
 (4) G2セル =LOOKUP(ROW()-1,F:F,D:D)
 (5) H2セル =INDEX(A:A,G2)&""
 (6) I2セル =IF(H2="","",TEXT(INDEX(B:B,G2),"yyyy/mm"))
   I3セル =IF(H3="","",TEXT(IF(LOOKUP(ROW()-1,F:F,D:D)=LOOKUP(ROW()-2,F:F,D:D),EDATE(I2,1),INDEX(B:B,G3)),"yyyy/mm"))

 各数式を下にコピー(但し、I2セルの数式はそこだけ)

 H:I列をピボット集計の対象とする

 <結果図>
 行  ___A___  ____B____  ____C____  _D_  __E__  __F__  _G_  ___H___  ___I___
  1  店舗名   開始期間   終了期間                           店舗名   年月   
  2  東京        4月1日     6月1日    2      3      1    2  東京     2024/04
  3  横浜        5月1日    6月30日    3      2      4    2  東京     2024/05
  4  神戸        7月1日    7月31日    4      1      6    2  東京     2024/06
  5  神戸        4月1日    5月31日    5      2      7    3  横浜     2024/05
  6  東京        4月1日    6月15日    6      3      9    3  横浜     2024/06
  7                                   7  #NUM!     12    4  神戸     2024/07
  8                                   8  #NUM!  #NUM!    5  神戸     2024/04
  9                                   9  #NUM!  #NUM!    5  神戸     2024/05
 10                                  10  #NUM!  #NUM!    6  東京     2024/04
 11                                  11  #NUM!  #NUM!    6  東京     2024/05
 12                                  12  #NUM!  #NUM!    6  東京     2024/06
 13                                  13  #NUM!  #NUM!    7  

(半平太) 2024/04/08(月) 19:59:24


半平太さん…!!!!

とても細かくご教示くださりありがとうございます。
教えていただいた通りやってみたところ、問題なくできました…!

こんな数式の組み方があるのかと大変勉強になりました。
本当にありがとうございました!
(きゅうり) 2024/04/09(火) 14:09:04


追加で入れ込みたい情報ができましたので、再質問させていただきます。

パワーピボットで他情報とリレーションするために、ナンバリングをしたいと考えております。

追加で下記I列のように割り振ったナンバーを表示させることはできるのでしょうか?

A列→ナンバー
I列→A列で振ったナンバーを表示

行 _A_ __B__ ____C____ ____D___ _E_ _F_ _G_ _H_ __I__ ___J___ ___K___

  1  1 店舗名  開始期間  終了期間                         店舗名   年月   
  2  2  東京    4月1日    6月 1日   2   3   1   2    1      東京    2024/04
  3  3  横浜    5月1日    6月30日   3   2   4   2    1      東京    2024/05
  4  4  神戸    7月1日    7月31日   4   1   6   2    1      東京    2024/06
  5  5  神戸    4月1日    5月31日   5   2   7   3    2       横浜    2024/05
  6  6  東京    4月1日    6月15日   6   3   9   3    2       横浜    2024/06

お手数をおかけしますが、ご教示いただけますと幸いです。
よろしくお願い致します。

(きゅうり) 2024/04/10(水) 17:23:36


 I2セル =IF(J2="","",INDEX(A:A,H2))

 下にコピー

(半平太) 2024/04/10(水) 17:41:31


半平太さん…(;_;)
早々にご回答くださりありがとうございます…!

なぜそんなにもスマートに回答ができるのか…
本当にありがとうございます!!!

非常に勉強になります。
早速使用させていただきます。

ありがとうございました!
(きゅうり) 2024/04/10(水) 18:03:02


コメント返信:

[ 一覧(最新更新順) ]


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