質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.51%

  • Excel

    1542questions

    Excelは、マイクロソフト社が開発しているデータ集計や分析を行う表計算ソフトの一つです。文書作成や表計算、資料作成などの多彩な機能を備えており、統合パッケージであるMicrosoft Officeに含まれています。

【Excel2007】ピボットテーブルで日付のグループ化ができない

解決済

回答 3

投稿

  • 評価
  • クリップ 0
  • VIEW 1,843

shiochan

score 2

前提・実現したいこと

Excel2007を使用して、ピポットテーブルを作成しています。
細かい日付(例えば2017/4/2と2017/4/6)に発生した経費をExcelに入力しましたが、
ピポットテーブルでは、上記2日を「2017年4月」として、合計金額を表示させたいです。

発生している問題・エラーメッセージ

選択対象をグループ化することはできません。

試したこと

https://hamachan.info/win8/excel/pibot.html
こちらのページを参考に、元データの日付欄の設定をし直しました。
しかし、いまだに解決されません。

補足情報(言語/FW/ツール等のバージョンなど)

パソコンは、Windows10
ExcelのバージョンはExcel2007です。

※当方、会社の事務員でして、基礎的な質問で申し訳ありません。
分かる方がいらっしゃれば、教えてくださると大変助かります。
よろしくお願いします。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 3

checkベストアンサー

+2

ピボットテーブルは同じ値のデータをひとまとめにしますから、2017/4/2と2017/4/6は別のまとまりになります。
年月でまとめたい場合には、日付(2017/4/2と2017/4/6)から月の初日(2017/4/1)を求めた列("年月")を作り、ピボットテーブルでは"年月"でまとめます。

下の画像は、簡単なテスト用データを作って確認したExcelの画面です。

A列が日付です。2017/4/2というように入力すれば日付型になります。(A2:A6に記入しました)

B列はAの日を1にした日付(月の初日)です。
B2セルに、=DATE(YEAR(A2),MONTH(A2),1) という式が入っています。DATE関数の引数をA2の年、A2の月、1 としていますから、月の初日になる訳です。
また「2017年4月」のように表示させたいので、セルの書式は「yyyy”年"mm"月"」としました。
B2をコピーして、B3:B6に張り付ければ下図のB列のようになります。

C列,D列は適当に入れました。D列は計算に使うので数値でなければなりません。

A1:D6を選択して、ピボットテーブルを作成し(同じワークシート中に作りました)、行に日付、値に経費の合計を選んだのが上側のピボットテーブルです。
日付ごとの合計がされています。

同様にピボットテーブルを作成し、行に年月、値に経費の合計を選んだのが下側のピボットテーブルです。
全部の経費が2017年4月として合計されています。
質問者が求めているのは、このようなピボットテーブルかと思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/04/18 15:35

    ありがとうございます!こういう表を作りたかったです!
    もう1つ、月の欄を作りピポットテーブルへ反映させるところまではできたのですが、
    ピポットテーブル上の表示が「2017/4/1」「2017/5/1」といったものになってしまいます。
    (表示指定した2017年4月 2017年5月になりません)この解決策はわかりますでしょうか…。

    キャンセル

  • 2017/04/18 16:13

    私はExcel2013を使っていて、Excel2007での動作確認が出来ませんので、申し訳ありませんが判りかねます。

    キャンセル

  • 2017/04/18 16:54

    承知しました。ありがとうございます。

    キャンセル

+1

集計対象としたい日付の入っている列(A,B,C...)を選択(ヘッダをクリック)
して、参考にされた場所の「文字列を日付型にする方法」以後の手順通りにやればうまくいきますが……

これがうまくいっていれば、2017/04/18 と入れていた場合に、2017/4/18 に表示が変わると思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/04/18 13:47 編集

    回答ありがとうございます。
    やっているのですが、なりませんでした。
    参考ページと1点違うのは、セルの書式設定を確認したところ「ユーザー定義」になっている点です。
    ただ、方法は手順通りにやっているのですが…。

    キャンセル

  • 2017/04/18 13:50

    補足事項として、、
    セルを選択して、書式設定を「日付」にしてみたのですが、それでもグループ化ができません。

    キャンセル

  • 2017/04/18 15:04

    やられたのはセルを選択して、セルのプロパティを出して、それの書式設定を日付に変更した、のでしょう?
    それでは駄目です。
    もとの書式設定が何であれ、「文字列を日付型にする方法」を使って、日付型に置き換える作業をしてください。

    キャンセル

  • 2017/04/18 15:36

    さっきの日付型の方法でやったものの反映されなかったため、別の方法を試しただけです。
    が、この書式設定では意味がないのですね。今後は無駄な方法はやらないようにします。。

    キャンセル

+1

少し整理しながらアドバイスさせていただきます。
※なお当方の確認環境はExcel2010ですので、動作に違いなどあればお知らせください。

①参考にされたサイトの内容について

これは「文字列型の日付」を「日付型の日付」に変更するところから説明がはじまります。
「日付型の日付」に変更したうえでピボットテーブルを作成すればグループ化できるという内容です。

今回のエラー内容からみて、データ範囲のA列の中に「日付型の日付」以外のセルが含まれているのではないかと推測されます。
「セルの書式設定がユーザー定義」だったと記載もあるので一部のセルは日付型かもしれませんが、ピボットテーブルに指定したデータ範囲内でA列は全て日付型でしょうか?
⇒確認方法はA列全体を選択した除遺体で書式を「標準」に設定したとき、「42826」のような数値にならないセルは日付型ではありません。

データ範囲内のA列の全てのセルが「日付型の日付」で記載されていれば、ピボットテーブルにした後でグループ化ができると思います。

なおExcel2010では問題ありませんでしたが、データとして空白セルが含まれているとグループ化できないという記事も見かけました。
Excel2007までの環境ではこれが原因となる方も多いようですので、あわせてご確認ください。

②日付を揃える対応について

coco_beauerさんの対応案についても(恐縮ですが)少し説明させていただきます。

この対応案は、A列は日付型である前提で、各月の初日に日付を揃えるという方法です。
データとして年月の列を用意することで、ピボットテーブルのグループ化機能を使わずに月別集計できるようになります。

この方法も当方のExcel2010環境では問題ありませんでしたが、shichanさんのExcel2007環境ではセルの書式がピボットテーブルに反映されないとのことで、この原因は私にもわかりません。

原因はわかりませんが、回避策として2つほど案があります。
まず1つめは、年月日で表示されてしまうピボットテーブルの行フィールドで、グループ化⇒「月」で集計とする方法です。
グループ化がエラーとならないのであればこれだけで対応できると思います。

もう一つの方法は、B2セルの式を以下に変更するというものです。
=YEAR(A2)&"年"&MONTH(A2)&"月"

これは「各月の月初の日付」に揃えていた部分を、「yyyy年m月という文字列」に揃えるという方法です。

文字列にしてしまうのでグループ化の道は断たれますが、月別集計したいという目的は一番手軽に達せられると思います。

以上、参考になれば幸いです。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/04/18 20:37

    解決済みでしたが、いくつか問題点も残っているようでしたので投稿させていただきました。

    キャンセル

  • 2017/04/19 17:46

    ありがとうございます!大変参考になりました。
    ①については、確かにまだ清算日が不明で空欄にしているセルがあったので、その影響かもしれません。
    ②については、年月表示がされなかったため、手打ちで○○年×月と変更してしまったのですが、そういった解決策もあったんですね。
    毎回、年月を入れる作業は面倒だなぁと思っていたので、教えていただいた計算式に変えていこうと思います。ありがとうございます!

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.51%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • Excel

    1542questions

    Excelは、マイクロソフト社が開発しているデータ集計や分析を行う表計算ソフトの一つです。文書作成や表計算、資料作成などの多彩な機能を備えており、統合パッケージであるMicrosoft Officeに含まれています。