• ベストアンサー

【Excel2003】全てのシートの非表示行列を表示させたい

For Each で各ワークシートの処理を回している既存のVBAがあります。 それに「非表示の行列を全て表示させる」という処理を追加したいのですが、検索してもなかなかネタがヒットせず、困っています。 (「シートそのものの表示/非表示」「行列を指定した表示/非表示」の情報ばかりがヒットしてしまいます) 手作業の場合、 1)ctrl+Aで全てを選択 2、3)行列それぞれを再表示 というシンプルな作業なのですが… (非表示の行列は、それぞれのシートで違います) ヒントがありましたら、教えていただけないでしょうか。

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

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

Sub 非表示行列再表示() For Each ws In Worksheets With ws .Cells.EntireRow.Hidden = False .Cells.EntireColumn.Hidden = False End With Next End Sub

bari_saku
質問者

お礼

ありがとうございます、できました!

関連するQ&A

  • VBAですべてのワークシートを処理したい

    ブック内の全ワークシートに対して同じ処理をするために、 For each ワークシート in Worksheets ~処理~ Next ワークシート を使ってみたのですが、その時にアクティブになっているシートしか処理されません。たとえば次のようなシンプルなコードでも、同様です。何が抜けているのでしょうか。 Sub allworksheets() Dim WS As Worksheet For Each WS In Worksheets Range("a1") = "123" Next WS End Sub マクロの勉強を始めたばかりで、基本的なことでつまづいてます。よろしくお願い致します。

  • ワークシートに対して処理をするVBAについて

    初めまして、ワークシートに対して処理をするVBAの記述に関して質問させてください。 複数のシートがあり、そのうち3シート目以降から最後のシートまで特定の処理をしたいと考えています。(最後のシートまでの数はそのときによって変動します。) しかし、 For Each sh In Array("A", "B", "C") のようにシート名を指定すると選択したシートに同時に処理をしてしまいます。選択したシートに同時に処理をするのではなく、1シート目を処理したら次のシート…という方法にしたいのですが、この場合どのように記述すればよいのでしょうか…?(T_T) ちなみに、 For Each sh In Worksheets という記述だと、全てのシートが処理の対象になってしまうのでだめなんです…。3つ目以降のシートに処理をしたいのです…!どなたかご教示いただけると嬉しいです!よろしくお願い致します!m(_ _)m

  • エクセルVBA 非表示シートがあるとエラー

    VBA初心者です。 エクセル2007を使用しております。 同一ブック内にある全てのシートで特定のマクロ(下記の例では×××)を実行するようにVBAマクロを個人用マクロブック上に作成しております。 Sub シート一括処理() Dim Sht As Worksheet For Each Sht In Worksheets Sht.Select Call ××× Next Sht End Sub ブック内に非表示シートがあった場合、エラーとなります。 ===================== 実行時エラー'1004' 'select'メソッドは失敗しました: ===================== 下記のような要件を満たすにはどのように修正すればよいでしょうか。 ・非表示シートに対しても、×××マクロは適応したい。 ・非表示シートは暫定的に表示してもよいが、最終的には非表示の状態にしたい。 よろしくお願いします。

  • エクセルのワークシート上からある部分の行列セルがかくれてしった!

    エクセルのワークシート上からある部分の行列セルがかくれてしった! 印刷プレビューには表示されますが、作業環境の中では隠れてしまい編集したくてもできない。 途中であるボタンを触ってしまったかもしれませんが、復旧方法がわかりませんので解る方教えて下さい。

  • マクロを含んだExcelシートが開けない

    OSはWindows2000(office2000)です。 Excel2000を使用しています。 マクロを使って表を作成していたのですが、一旦保存を して終了し、翌日に作業しようと思い、クリックすると プログラムが応答しません。という表示がでて起動でき ません。そのワークシートから別のワークシートを参照 しているのですが、その参照先のワークシート(マクロ 含)も起動できません。マクロを含むシートがかなりの 件数あるのですが、すべて開けなくなってしまいました。 セキュリティレベルを「低」にしても同様でした。 マクロを含まないワークシートは開けます。 どのような原因が考えられるのでしょうか? 対処法などご存知でしたらお教えください。

  • excelVBAで全てのsheetで同じ範囲を表示

    エクセルVBAにて、3つのsheet全てで同じ範囲を表示させるには どう書けば良いのでしょうか? 例えば、ハイパーリンク機能を使ってA100:A150を選択させれば 開いたシート上にA100:*150辺りを表示できますが、マクロでは 選択はされるものの希望に合う表示が成されません(記録マクロ試行) これが可能ならば3つのsheet全てで同じ範囲を表示させたいのです。 (各シートを選択すれば同じ位置が表示されている) お手数おかけしますが、よろしくご教示下さい。

  • Excel2010ワークシートが表示されない

    windows7のExcel2010でファイルを新規作成してもワークシートが出てきません。 タブや数式バー、ステータスバーなどほかの項目は出てますがワークシートが本来あるところは灰色になっています。 くわえてファイルタブ以外のタブのリボンは殆ど半透明で選択できなくなっています。 ウィンドウサイズを最大にしても出てきません。 以前似たような質問をされた方がいてその回答から ファイルタブ→「オプション」→「詳細設定」にいきましたが 「次のブックで作業するときの表示設定」、「次のシートで作業するときの表示設定」なども文字の右に「ブックを開かない」「シートを開かない」と表示されていて編集できないようになっています。 最後に使ったのは10日ほど前で、それからExcel練習用ソフトの「特打式 Excel編」をインストールして使っていたのと、 昨日FOM出版の「よくわかるマスター Excel2010 対策テキスト&問題集」をインストールして模擬試験を使いました。 以前作ったファイルはちゃんと開けてワークシートも出てきているので、新規作成した場合のみです。 すみません回答のほどお待ちしています。

  • Excelで新たに追加するシートにも特別なシート保護を適用させたい。

    Excelで新たに追加するシートにも特別なシート保護を適用させたい。 VBAの知識がかなり浅いので質問や記述内容もつたないと思いますがご了承ください。 1つのワークブック内の全てのシートに対し、 シートの保護をかけつつ、グループとアウトライン設定だけは有効にしたいため、 ThisWorkbook内に以下のように記述しました。 Private Sub Workbook_Open() Dim x As Worksheet For Each x In ThisWorkbook.Sheets x.EnableOutlining = True x.Protect Password:="xxxxxxxx", UserInterfaceonly:=True Next End Sub これで既存のワークシートに対しては希望の動きをしましたが、 シートをコピー・複製して増やしていくため、 新たにコピーして追加されたシートに対しては機能しません。 追加したシートにもこの特別な保護が有効になるようにするには、どうしたらよいのでしょうか。 ご教授いただけるとうれしいです。 よろしくお願いいたします。

  • Excel2002のVBAでワークシートの挿入で疑問

    VBAの勉強をし始めたばかりものものです。 ワークシートの数が10枚になるまでワークシートの挿入を繰り返すように、以下のVBAを作成しました。 Sub wsins() Dim i As Integer For i = Worksheets.Count To 10 Step 1 Sheets.Add Next End Sub しかし、上記の方法だと、ワークシートが11枚になってしまいます。 もちろん10のところを9にすることによって、ワークシートがトータルで10枚にはなるのですが、理由がわかりません。 勉強したばかりで、思い違いをしているのかと思いますが、教えていただけないでしょうか?よろしくお願いいたします。

  • VBAでワークシートの図形をすべて選択したい!

    VBAのヘルプでは Set myDocument = Worksheets(1) myDocument.Shapes.SelectAll Set sr = Selection.ShapeRange と書いてありましたが、メモリ不足で処理できません。 何か良い方法ないでしょうか? 最終的にワークシート上の図形をすべて削除したいのです。VBAではどうするのか教えてください! EXCEL2000です。

専門家に質問してみよう