• ベストアンサー

Excel2003VBA 行の非表示

お世話になります。 掲題の件で ご相談が御座います。 ある特定の列(連続した4列F、G、H、Iです)が全部「0」だった場合 その行 全体を非表示にするというマクロを組みたいのですが 未熟者の為 どのようなコードを記述したら良いのか分からず困っております。 どなたかご教示いただけませんでしょうか。 F、I列は数式により「0」と表示されています。 G、H列は値で「0」になっております。 表全体は600行ぐらいまでですが、今後増える可能性があります。 (増えても800行までは行かないと思います) 説明不足等が御座いましたら ご指摘ください。 宜しくお願い致します。

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

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

こんな感じではどうでしょう? Sub test01() Dim x As Long '変数xを長整数宣言 With ActiveSheet 'アクティブなシートにおいて x = .Cells(1).SpecialCells(xlLastCell).Row 'xは最終行 For Each myRw In Range("F1:I" & x).Rows 'F1~Ixの各行が myRw.EntireRow.Hidden = (Application.WorksheetFunction.CountIf(myRw, 0) = 4) '0が4あれば隠す(なければ表示) Next '繰り返し End With End Sub

ookami1969
質問者

お礼

ご回答 誠にありがとう御座います!! ヤバイです!! 超感動です!!! これで 作業時間が1/100ぐらいになります!!! 各行にコメントまで入れていただきありがとう御座いました!!!

関連するQ&A