
VBA初心者です。
あるBookにsheet1、sheet2、sheet3・・・と複数のシートがあります。
※Bookによってシート数が異なります。
※すべて同じフォームなので列の項目は一緒です。
それぞれのシートのBからC列をエクセルのグループ化のように非表示、表示をさせたいです。
ただ、グループ化では一括で複数シートの特定列を非表示・表示といったことができないことがわかり、いろいろ調べたところVBAでできることがわかったのですが思うようにいきません。。
初心者ながら調べてわかったことは下記なのですが
これを組み合わせてVBA記述をしたのですが、うまくできません。。。
★すべてのシートを選択
Worksheets.Select
★AからCの列を非表示にする
Sub sample()
ActiveSheet.Columns("B:C").Hidden = True
End Sub
アクティブは1つのシートを指し、セレクトは複数選択というようなことはわかったのですが。。
知識不足で行き詰ってしまいました。。。
何卒、ご教授頂ければ幸いです。
No.2ベストアンサー
- 回答日時:
こんにちは!
B・C列を非表示にするのはすべてのSheetでよいのですね?
非表示・再表示のコードの一例です。
標準モジュールにしてください。
Dim k As Long 'この行から//
Sub 非表示()
For k = 1 To Worksheets.Count
Worksheets(k).Columns("B:C").Hidden = True
Next k
End Sub
Sub 再表示()
For k = 1 To Worksheets.Count
Worksheets(k).Columns.Hidden = False
Next k
End Sub 'この行まで//
コードのコメントを拝見すると
>★AからCの列を非表示にする
となっていますが、B・C列としています。m(_ _)m
tom04さま
昨年は大変お世話になりました。
今年もさっそく、ご教授頂きましてありがとうございます。
無事、ご教授頂いたVBAでできました!!
ありがとうございます。
No.1
- 回答日時:
こんなのはいかがですか?
---------------------------------------------------------------------
Sub Sample()
Dim ワークシート As Object
For Each ワークシート In Sheets
Columns("B:C").EntireColumn.Hidden = True
Next
End Sub
---------------------------------------------------------------------
さっそく、ご教授ありがとうございます。
私の質問がいけなかったのかもしれませんが
ご教授頂いたVBAですとアクティブなシートのみしか
反映されず、今回は他の方をベストアンサーとさせていただきました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
Excel VBA 複数のシートの行を非表示
その他(ソフトウェア)
-
エクセルで特定の値を含む列のみVBAで非表示にしたい
Excel(エクセル)
-
特定のセルが空白だったら、その行を非表示にしたい。。。
Visual Basic(VBA)
-
-
4
指定したシート名以外を非表示にするには?VBA
Excel(エクセル)
-
5
エクセル・マクロ シートの非表示でマクロのエラー
Visual Basic(VBA)
-
6
エクセルVBAのEntireRow.Hiddenをスピードアップしたいのですが・・・。
Excel(エクセル)
-
7
EXCELで複数のシートを一度に「シートの保護」することはできますか?
Excel(エクセル)
-
8
EXCEL VBA 指定範囲内で特定の列に空白セルを含む行を非表示
Excel(エクセル)
-
9
マクロを複数シートに実行するには?
Excel(エクセル)
-
10
エクセルの保護で、列の表示や非表示が加納にするには
Excel(エクセル)
-
11
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
12
エクセルで離れた列を選択してグループ化出来ますか?
Excel(エクセル)
-
13
「Columns(A:C")」の列文字を数字にして表記したい"
Excel(エクセル)
-
14
VBAマクロ非表示が遅いので早くしたい
Excel(エクセル)
-
15
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
16
VBA Cのセルが空白でなかったら、Aのセルに順番に数値を入力
Visual Basic(VBA)
-
17
指定した条件で行セルを非表示にするVBAについて
Visual Basic(VBA)
-
18
実行時エラー'1004': WorkSheetクラスのVisibleプロパティを設定できません
Visual Basic(VBA)
-
19
WorkBooksをオープンさせずにシートにコピーしたい【EXCEL VBA】
Excel(エクセル)
-
20
エクセルで特定の文字列が入った行を非表示にしたい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【マクロ】【配列】3つのシー...
-
ExcelのVlookup関数の制限について
-
【条件付き書式】countifsで複...
-
エクセルの保護で、列の表示や...
-
文字の色も参照 VLOOKUP
-
Excelのセルの色を変えた行(す...
-
シートをまたぐ条件付き書式に...
-
Excelでの並べ替えを全シートま...
-
excel 複数のシートの同じ場所...
-
エクセルで、チェックボックス...
-
【エクセル】1列のデータを交...
-
エクセルの列の限界は255列以上...
-
Excel の複数シートの列幅を同...
-
【VBA】複数のシートの指定した...
-
EXCELのVBAで複数のシートを追...
-
SUMPRODUCTにて別シートのデー...
-
Excelに自動で行の増減をしたい...
-
エクセル マクロ 標準モジュー...
-
Excel 2段組み
-
Excel VBA ピボットテーブルに...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】【配列】3つのシー...
-
文字の色も参照 VLOOKUP
-
【条件付き書式】countifsで複...
-
ExcelのVlookup関数の制限について
-
エクセルで、チェックボックス...
-
エクセルの保護で、列の表示や...
-
Excelのセルの色を変えた行(す...
-
EXCELのVBAで複数のシートを追...
-
シートをまたぐ条件付き書式に...
-
Excelでの並べ替えを全シートま...
-
Excel の複数シートの列幅を同...
-
VBAで繰り返しコピーしながら下...
-
【VBA】複数のシートの指定した...
-
SUMPRODUCTにて別シートのデー...
-
Excelに自動で行の増減をしたい...
-
エクセルの列の限界は255列以上...
-
Excel 2段組み
-
VLOOKアップ関数の結果の...
-
excel 複数のシートの同じ場所...
-
Excel VBA ピボットテーブルに...
おすすめ情報