• ベストアンサー

Excel VBA 列 グループ化

Excel VBAについてお尋ねいたします。 Excelにて横長の表を作成していますが、 VBAを使用してG列~J列をグループ化させたいです。 ネットで調べると行のグループ化のことだらけだったので、お分かりの方がいらっしゃいましたらご回答お願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

WEBの記事を調べればわかることだが 参考に ’列のグループか化 Sub test01() Columns("A:G").Select Selection.Columns.Group 'Worksheets("Sheet1").Columns("C:E").Group 'Columns(D:E〉は不可 ActiveSheet.Outline.ShowLevels RowLevels:=1 End Sub ’行のグループ化 Sub test02() Rows("2:8").Group 'Hide groups ActiveSheet.Outline.ShowLevels RowLevels:=1 'Show groups ' ActiveSheet.Outline.ShowLevels RowLevels:=2 End Sub 'グループ化の解除 Sub test03() Range("1:8").Ungroup End Sub ’グループ化階層全解除 Sub test04() Selection.Rows.ClearOutline End Sub 'グループ化階層全解除2  列の解除 Sub test05() Selection.Columns.ClearOutline End Sub 'グループ化解除 列 Sub test06() Columns("A:G").Select Selection.Columns.Ungroup End Sub むしろ、どういう使い方をするのか(代表例は、加算される明細の行や列と、合計行や列があって、クリックで折りたたみたい、などの、したいことを具体的に質問に書いて質問すべきと思う。

Yoshikun0928
質問者

お礼

今回も回答いただきましてありがとうございます。 わざわざ長文を送っていただき大変恐縮です。助かりました。

その他の回答 (1)

  • kon555
  • ベストアンサー率52% (1750/3357)
回答No.1

このページでは列でのグループで解説しています http://program.station.ez-net.jp/special/handbook/office/excel/range/group.asp その例で言えば Call Columns("G:J").Group でお望みの範囲をグループ化できます。

関連するQ&A

  • エクセルで離れた列を選択してグループ化出来ますか?

    こんにちは。 エクセル表で、A~C列とE~G列をグループ化して、 表示や非表示を同時にしたいのですが、 それらの列を選択してグループ化しようとすると「複数の選択範囲に対してそのコマンドを使用することは出来ません」と出ます。 グループ化出来ないのでしょうか? それとも他に、右クリックの「表示しない、再表示」の他に、グループ化に匹敵した方法はありますか? よろしくお願い致します。

  • エクセルVBA 行列のグループ化判定方法

    エクセル(2003)VBAにて シートの行、列のグループ化をされているものはグループを解除したいのですが、 グループ化されていないものに解除命令をだすと 当然エラーが出ます。 Selection.Rows.Ungroup Selection.Columns.Ungroup グループ化されているかを判別する手段はありますか?

  • エクセルVBA 列の削除 

    VBA初心者です。過去の質問やネットで捜してみましたがわかりません。 A社 B社 C社 D大学 F大学 G社・・・・ 2人 1人 0人  4人  2人 1人・・・・ 5人 2人 1人  2人  1人 1人・・・・ ・・・・ のように、1行目から項目名が入っている表がある時、項目名に「~大学」とはいっている列を列ごと削除するにはどうしたらいいでしょうか。 質問の意味がわかりにくくてすいません。おわかりになる方教えてください。よろしくお願いします。

  • エクセル VBA

    最終行から順番に下へ同列で入力するVBAを教えて下さい。 EXCELのVBAで教えて下さい。 シート1のA列にはB列が入力されると自動入力されるNo.があり、C~G列もB列が入力されると自動入力されます。 B列には日付が、H列には3~4桁の数字が入力したいのですが、 入力行は必ず最下行のセルB、Gな為、VBAでフォームを作成し、 入力実行ボタンを押すことにより、最下行のセルB、Gに反映されるように したいです。 又、上記入力後に、シート2のH~N列をコピーして、シート3のA~G列に値のみの貼り付けを行い保存した後、シート3のA~G列をコピーして csvファイルを作成して保存したいです。 一連の流れを、フォームの入力実行ボタンを押すことで実行したいのですができるのでしょうか? 宜しく御願い致します。

  • エクセル 表の列を行に移行したい

    エクセル2007を使用しています。 表の中の列を行に移行したいのです。 添付した画像の商品の列(A~E)を右表の行に移行したいのです。 関数あるいはVBAで対応できないでしょうか? よろしくお願いします。

  • Excel VBAのカウントについて

    Excel2003で表を作成しています。 画像のような表を作成しているのですが、 左のデータから右の表に数を入力するのに、VBAで出来ないでしょうか? COUNTIFを使おうと思ったのですが、COUNTの条件が3つありますし、 左のABCの列は500行くらいデータが入っているので出来ればVBAで出来たらと思いました。

  • エクセルVBAについて

    エクセルVBAについての質問です。A1、B1と順に入力していき、最終 F1列にカーソルがいったときに(F1を空欄のまま)エンターキーを押すと次の行のD2にカーソルが飛ぶ、そしてD2、E2に入力をして、G列にカーソルを動かしエンターキーで次の行のA列にカーソルが移動する、こんな操作をしたいのですが。つまりF列にカーソルがいったらカーソルは次の行のD列に飛び、G列にカーソルがいったら次の行の先頭つまりA列にカーソルが移動するように。VBA初心者でもつくれるかどうか、よろしくお願いします。

  • エクセルVBA

    A1からE20までの範囲に数字が表示されています。 そしてその表の行ごとの数値の合計をG列に算出して表示させたいのですが どのようにすれば良いのでしょうか。 VBA初心者なので、分かりやすく教えていただけると助かります。 よろしくお願いいたします。

  • EXCEL VBAで日報作成したい

    お世話になります。 EXCEL VBAの勉強をかねて日報を作成しようと思っています。 添付図にあるような簡単な日報ですが、VBAでやりたいことは2つあります。 1.行追加 各行の隣にある「行追加」ボタンを押したらその行を下に追加したいのです。 2.カレンダー作成 「カレンダー作成」というボタンを押したらA5に入っている月を参照して、添付図のようなA列が月、B列が日、C列が曜日、D列が開始時間、E列が終了時間、F列が作業、G列に行追加ボタンが自動で該当月のカレンダーに自動作成できれば最高です。 上記1.2を実現するためのロジックについてどなたかお知恵をお借りできませんでしょうか? よろしくお願い致します。 EXCEL2013

  • エクセルVBAで列の選択

    VBAで通常は、Columns("D").Select でD列が選択されるはずですが、途中にセルが結合している個所があると、選択範囲の列が、すべての行で広がってしまいます。 手動で列番号をクリックするとD列だけの選択ができるのにVBAではなぜ出来ないのでしょう? どうコードを変えればいいのでしょうか? エクセル2000です。

専門家に質問してみよう