Excel:非表示行を含めずに集計(カウント)する方法

Excelで非表示行を含めずに集計したい場合はSUBTOTAL関数を使用すると便利です。

フィルタで絞ったり、グループ化して一部範囲行を非表示にして現在表示されている行のみ集計したい場合などで有用となる関数です。

SUBTOTAL関数の書式

  • =SUBTOTAL(集計方法,参照1,[参照2]…)
  • 第1引数の集計方法には1~11のコード値か101~111のコード値を指定出来ます。3桁のコード値を指定する事で非表示行を含めずに集計することが可能になります。
    Function_num
    (非表示行を含む)
    Function_num
    (非表示行を含めない)
    関数
    1101AVERAGE
    2102COUNT
    3103COUNTA
    4104MAX
    5105MIN
    6106PRODUCT
    7107STDEV.S
    8108STDEV.P
    9109SUM
    10110VAR.S
    11111VAR.P

SUBTOTAL関数の使用例

  • 下記サンプル(テーブル)ではC列は通常のSUM関数、D列をSUBTOTAL関数で集計しています。全ての行を表示している場合はどちらも値は同じとなります。D8セルには「=SUBTOTAL(109,[金額2])」を入力します。
  • グループ化した分類=①の行を非表示にしてみると以下の様に分類=②の行のみの集計値がD列に表示されているのが確認出来ます。
  • 他にもフィルタで商品=Aのみ表示すると商品=Aの集計のみD列に表示されているのが確認出来ます。

 

SQL:xx日後、xxヶ月後、xx年後などの日付を取得する方法

SQLでsysdateなどの日付型へ加算、減算してxx日後、xxヶ月後、xx年後を求める方法をメモしておきます。

xx秒後、xx秒前を求める方法

クエリー(SQL)例

  • システム日付の30秒後と30秒前を取得する例です。

実行結果

 

xx分後、xx分前を求める方法

クエリー(SQL)例

  • システム日付の5分後と5分前を取得する例です。

実行結果

 

xx時間後、xx時間前を求める方法

クエリー(SQL)例

  • システム日付の2時間後と2時間前を取得する例です。

実行結果

 

xx日後、xx日前を求める方法

クエリー(SQL)例

  • システム日付の1日後と1日前を取得する例です。

実行結果

 

xxヶ月後、xxヶ月前を求める方法

クエリー(SQL)例

  • システム日付の1ヶ月後と1ヶ月前を取得する例です。ADD_MONTHS関数は1/31の1ヶ月後は2/28となるように上手く月末日を調整してくれます。

実行結果

 

xx年後、xx年前を求める方法

クエリー(SQL)例

  • システム日付の1年後と1年前を取得する例です。ADD_MONTHS関数に12の倍数を指定することで年単位での加減算が可能となります。

実行結果