日次データを月次データにExcelで変換

日次データを月次データにExcelで変換

私は Excel プロジェクトに取り組んでおり、20 年間の毎日の利回り率データを含む Excel シートがあります。各月の最初のエントリの利回りのみを取得したいのですが、Excel を使用してこれをどのように実現できますか?

私は Excel を使い始めたばかりなので、詳しいアドバイスをいただければ本当にありがたいです。

tl:dr 何らかの方法で日次データを月次データに変換する(各月の最初の発生)

答え1

各月の最初のエントリを生成するには、以下の方法に従ってください。

ここに画像の説明を入力してください

使い方:

  • セル O58 の配列 (CSE) 数式:

    {=MIN(IF(TEXT($K$58:$K$73,"MMMM")=$N58,$K$58:$K$73))}

  • セル P58 の数式: =IFERROR(INDEX($L$58:$L$73,MATCH($O58,$K$58:$K$73,0)),"")

注意

  • 列 O のヘルパー データをスキップする場合は、次の配列 (CSE) 式を使用できます。

    {=IFERROR(INDEX($L$58:$L$73,MATCH(MIN(IF(TEXT($K$58:$K$73,"MMMM")=$N58,$K$58:$K$73)),$K$58:$K$73,0)),"")}
    

配列数式を終了するにはCtrl+Shift+Enter

必要に応じて、数式内のセル参照を調整できます。

答え2

日付が列 A にあり、収量データが列 B にあると仮定します。列 C を「初日ですか?」と呼び、次の数式を C2 に入力します。

=DAY(A2)=1

または週末をスキップする(つまり、月の最初の平日)

=DAY(A2)=DAY(WORKDAY(EOMONTH(A2,-1),1))

または、より確実なオプション(日数/データポイントが欠落している場合)

=MONTH(A3)<>MONTH(A2)          ...start from C3 (make C2 = TRUE)

これは文字通り、(上の行と比較して)月が変更された最初のデータ ポイントを取得します。

セル C2 の右下隅をダブルクリックします (クリックする前にマウス カーソルがプラス記号に変わります)。これにより、すべてのデータとともに数式が自動入力されます (数式列とデータの間に空白の列がない限り)。

次に、ヘッダー行全体を選択し、[ホーム] > [並べ替えとフィルター] > [フィルター] をクリックします。各列ヘッダーの横に小さな矢印が表示されます。[初日ですか?] の横にある矢印をクリックし、[FALSE] のチェックを外します。これで、その月の初日以外の日付はすべて非表示になります。必要に応じて、このデータをコピーして新しいシートに貼り付けることができます。すべてのデータを再度表示するには、[ホーム] > [並べ替えとフィルター] > [クリア] をクリックします。

関連情報