No.2ベストアンサー
- 回答日時:
ピボットテーブルを作る。
その後シートにコマンドボタンを1つ貼りつけます。ダブルクリックすると、VBE画面に飛び
Private Sub CommandButton1_Click()
End Sub
が出ます。
Private Sub CommandButton1_Click()
Range("A4").Select
Selection.Group Start:=Range("j1"), End:=Range("j2"), By:=Range("j3")
End Sub
のようにします。
どこでも良いがデータの邪魔にならない列、例えばJ列に
J1始めの値
J2終りの値
J3飛び飛びにする値。ステップ値。
の数値を入れます。
(例えば初め1、終り10、ステップ3とすると1、1-3、4-6、7-10の区分けになります。)
これらはその都度いれる。
そしてデザインモードを脱して、ボタンをクリックすれば
即座に色々な区分けに出来る。
この回答への補足
回答、ありがとうございます。便利そうですね。
シートにコマンドボタンを貼りつける手順が分かりません。下記のように二通りやってみましたが、コードをコピペして実行しても最終行でエラーになります。正しい方法を教えてください。
1)ユーザーフォームの挿入→ツールボックスからコマンドボタンをUserForm1にドラッグ→ダブルクリック→VBE画面
2)「表示]→[ツールバー]→[フォーム]→フォームツールバー → ボタンをクリック→シート上で+記号をドラッグ→ボタン1とマクロの登録ダイアログボックスが出る(ボタン1_Click)→新規作成→VBE画面に飛び、Module1に
Sub ボタン1_Click()
End Sub
が出ます。
回答、ありがとうございます。
シートにコマンドボタンを貼りつける手順は過去の質問の検索で、
「表示-ツールバー-フォームのボタンと、表示-ツールバー-コントロールツールボックスのボタンがあります。
前者は右クリックにマクロ登録があり、後者はデザインモード時にダブルクリックでVBE画面が開きます。」
とあり、解決しました。
ですが、コードをコピペしてボタンをクリックしても、
Selection.Group Start:=Range("j1"), End:=Range("j2"), By:=Range("j3")
でエラーになります。どこに問題があるのでしょうか?
他の方でも、よかったらお教え下さい。
No.1
- 回答日時:
グループ分け自体は、項目を選択して右クリックで
「グループとアウトラインの設定」で「グループ化」できますが
区分を手軽に変えたいなら、元の表にグループ化用の列を作って
設定を切り替えるのが楽だと思います。
数式でなら上記でグループ化するのが数値の範囲なら
1~3 =SUMIF(A:A,"<=3",B:B)
4~6 =SUMIF(A:A,"<=6",B:B)-SUMIF(A:A,"<=3",B:B)
7~10 =SUMIF(A:A,"<=10",B:B)-SUMIF(A:A,"<=6",B:B)
"<=3"は C1に3があれば "<="&C1 でも可
こんな関数の使い方もあります。
=SUMPRODUCT(($A$1:$A$100>=1)*($A$1:$A$100<=3)*(
($B$1:$B$100))
A1~A100が1~3の間の数値の行のB列の値を集計します。
この回答への補足
回答、ありがとうございます。
>区分を手軽に変えたいなら、元の表にグループ化用の列を作って
設定を切り替えるのが楽だと思います。
ピボットを使うのに、この方法を知りたいのです。詳しく教えて頂きたいです。
ピボットを使わない場合のSUMIF、SUMPRODUCTは便利ですね。参考になりました。
因みに、同様に平均を出せる関数はありますか?
解決したので、この欄を借りて2人にお礼します。
#2の方のマクロのエラーの件ですが、
質問では、A列、B列はデータでピボットテーブルは別の位置のつもりでした。私の説明が不十分でした。
セルA1にピボットテーブルという回答だったんですね。
ヘルプで「Range オブジェクトがピボットテーブル フィールドのデータ範囲内の単一セルを表す場合、Group メソッドはそのフィールドで数値またはデータのグループ化を実行します。」とありました。
それで、Range("A4").Select な訳ですか。
実際のデータはかなりの量なので、自在に範囲分けができて大変助かります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Power Query でのデータの一括修正について 2 2022/05/10 02:00
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Excel(エクセル) ピボットテーブル集計表について。ピボットテーブルで集計を行うとき、内訳集計ではなく、通常集計表にする 2 2023/08/10 07:16
- Excel(エクセル) ピボットテーブルの表示変更の仕方 初心者なので、的外れな質問だったらすみません 受注日ごとに商品名と 1 2022/04/26 23:23
- 統計学 確率統計の問題です。 3 2022/04/07 04:39
- Excel(エクセル) マクロか関数で処理したいのですが、教えて頂けませんか。 8 2022/10/31 15:18
- その他(Microsoft Office) マクロVBAについて 1 2022/09/06 18:12
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) 【困っています2】VBA 追加処理の記述を教えてください。 2 2022/08/26 11:42
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル初心者です 関数の入れ...
-
【関数】先頭だけにある、半角...
-
エクセル 白黒印刷で白線を印刷...
-
Excelのチェックボックスの使い...
-
【関数】適切な文字数の数字を...
-
Excelのpivotについて質問です
-
Excel ピボットテーブルで日付...
-
LOOKUP関数を使えばいいのでし...
-
エクセル関数を教えてください
-
エクセルのセルに同じ大きさの...
-
UNIQUE関数が使えないバージョ...
-
excelの不要な行の削除ができな...
-
エクセルで「-0.0」と表示さ...
-
時間によってファイル名が変わ...
-
WPS OFFICEでの縦書きについて
-
エクセルの関数について教えて...
-
Aというブックの1というシート...
-
【マクロ】シート名を取得する...
-
VBA Private Sub Worksheet_Cha...
-
VBA、Excelのworkbook.open に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel 2019 のピボットテーブル...
-
[関数得意な方]教えて下さい・...
-
Excelにてある膨大なデータを管...
-
[関数について]わかる方教えて...
-
Excel初心者です。 詳しい方、...
-
excelの不要な行の削除ができな...
-
エクセル関数に詳しい方教えて...
-
INDIRECTを使わず excelで複数...
-
[オートフィルタ]で抽出された...
-
エクセルの神よ、ご回答を! エ...
-
エクセル関数に詳しい方、教え...
-
各ページの1番上の表示について
-
Excelで写真のような表を作った...
-
エクセルで不等号記号(≠)が上に...
-
数学 Tan(θ)-1/Cos(θ)について...
-
Excel 2019 は、SPILL機能があ...
-
Excelで全角を半角にしたいので...
-
条件付き書式を教えてください
-
Excel フィルターを掛けた状態...
-
[オートフィルタ]の適用範囲の...
おすすめ情報