
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で質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- Visual Basic(VBA) 複数指定セルの可視セルのみを別シートに転記するVBAについて 2 2022/05/27 21:19
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2022/06/10 11:06
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Visual Basic(VBA) Excel VBA マクロ 先頭行の固定とオートフィルター設定を全てのシートに適用したいです 1 2022/11/12 15:32
- Excel(エクセル) ユーザー定義について質問です。 2 2023/06/28 13:21
- Visual Basic(VBA) 複数シートの複数列に入力されているデータを重複なしで抽出するVBAを作りたいです。 9 2022/06/17 10:33
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 3 2022/06/10 09:24
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
このQ&Aを見た人はこんなQ&Aも見ています
-
Excel VBA 複数のシートの行を非表示
その他(ソフトウェア)
-
指定したシート名以外を非表示にするには?VBA
Excel(エクセル)
-
エクセルで特定の値を含む列のみVBAで非表示にしたい
Excel(エクセル)
-
-
4
特定のセルが空白だったら、その行を非表示にしたい。。。
Visual Basic(VBA)
-
5
EXCELで複数のシートを一度に「シートの保護」することはできますか?
Excel(エクセル)
-
6
エクセル・マクロ シートの非表示でマクロのエラー
Visual Basic(VBA)
-
7
「Columns(A:C")」の列文字を数字にして表記したい"
Excel(エクセル)
-
8
EXCEL VBA 指定範囲内で特定の列に空白セルを含む行を非表示
Excel(エクセル)
-
9
マクロを複数シートに実行するには?
Excel(エクセル)
-
10
エクセルの保護で、列の表示や非表示が加納にするには
Excel(エクセル)
-
11
【VBA】マクロの入ったファイルと同じフォルダに,出力したファイルを保存するコードについて
Visual Basic(VBA)
-
12
Excelで重複データの件数ではなく、何番目かを求める方法
Excel(エクセル)
-
13
エクセルVBAのEntireRow.Hiddenをスピードアップしたいのですが・・・。
Excel(エクセル)
-
14
エクセルで離れた列を選択してグループ化出来ますか?
Excel(エクセル)
-
15
複数のシートの同じセルに入力するvbaを教えてください
Excel(エクセル)
-
16
ExcelVBAで、指定したシートに対して同じ処理を行いたい
Excel(エクセル)
-
17
VBAで指定シート以外の選択
Visual Basic(VBA)
-
18
Excel VBAでシート内全体に非表示列があるかの判定
Excel(エクセル)
-
19
マクロボタンを押すと、ファイル名を“日付(年月日)_文字.xlsx”にして指定ファイルに保存したいの
Excel(エクセル)
-
20
特定のシート名のシートのみ除外して、それ以外のシート名のシートをすべて集約する方法(VBA)
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【条件付き書式】countifsで複...
-
文字の色も参照 VLOOKUP
-
VBAで繰り返しコピーしながら下...
-
エクセルで、チェックボックス...
-
ExcelのVlookup関数の制限について
-
シートをまたぐ条件付き書式に...
-
エクセルの保護で、列の表示や...
-
エクセルVBAで、ある文字を含ん...
-
エクセルVBA 列検索後に該当デ...
-
Excel複数シートにあるデータを...
-
Excel 2段組み
-
ある数値に対して、値を返す数...
-
VLOOKアップ関数の結果の...
-
Excel の複数シートの列幅を同...
-
【エクセル】1列のデータを交...
-
Excelで全てのシートに一気に列...
-
【マクロ】対象データを別シー...
-
エクセルVBA 行追加時に自...
-
スプレッドシートでindexとIMPO...
-
SUMPRODUCTにて別シートのデー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
文字の色も参照 VLOOKUP
-
ExcelのVlookup関数の制限について
-
【条件付き書式】countifsで複...
-
エクセルの保護で、列の表示や...
-
Excelのセルの色を変えた行(す...
-
エクセルで、チェックボックス...
-
VBAで繰り返しコピーしながら下...
-
シートをまたぐ条件付き書式に...
-
Excelでの並べ替えを全シートま...
-
Excel の複数シートの列幅を同...
-
Excelに自動で行の増減をしたい...
-
【VBA】複数のシートの指定した...
-
【エクセル】1列のデータを交...
-
SUMPRODUCTにて別シートのデー...
-
Excel 2段組み
-
エクセル マクロ 標準モジュー...
-
エクセルの列の限界は255列以上...
-
excel 複数のシートの同じ場所...
-
エクセルVBAで、ある文字を含ん...
-
VLOOKアップ関数の結果の...
おすすめ情報