- ベストアンサー
エクセルで特定の列が0表示の場合、その行を非表示にしたい
エクセルで特定の列が0表示の場合、その行を非表示にしたいのですが…ただし、その0値は数式から反映されての0表示です。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
マクロを使用しないのであればオートフィルタを利用すればできます 「特定の列」にオートフィルタをかけて、プルダウンメニューの(オプション)→「0と等しくない」を設定すれば「0」以外の行だけが表示されます 数式の結果であっても、直接入力した値でも構いません マクロがよければ補足して下さい。ただ「ツール」→「マクロ」→「新しいマクロの記録」で上記操作をすれば、マクロ(VBA)が全く分からなくてもできると思いますが…
その他の回答 (2)
- zap35
- ベストアンサー率44% (1383/3079)
#01です。A列、B列と決まっているなら If Cells(idx, "A").Value = 0 And Cells(idx, "B").Value = 0 Then でよいでしょう。
お礼
ありがとうございました!!
補足
たびたびすみmせん、この部分→Const col As String = "A" は このままでよいでしょうか?
- zap35
- ベストアンサー率44% (1383/3079)
#01です。マクロでも色々なアルゴリズムが考えられますが、シンプルな方法にします。「特定の列」の列名でマクロを一部修正する必要がありますので、マクロのコメントをみてください 以下のマクロをALT+F11でVBE画面を開き、左上のVBA Projectでシート名を右クリックし「挿入」→「標準モジュール」で表示される画面に貼り付けて下さい。マクロの実行はALT+F8でマクロ一覧を開き、マクロ名を選択して「実行」ボタンです。 Sub Macro1() Dim idx As Long Const col As String = "A" '実際の「列名」に直してください Application.ScreenUpdating = False For idx = 1 To Range(col & "65536").End(xlUp).Row If Cells(idx, col).Value = 0 Then Rows(idx).Hidden = True End If Next Application.ScreenUpdating = True End Sub
補足
ありがとうございます!! できました。 尚、A列、B列共、0の場合というようなことも可能でしょうか? もし、よろしければ、教えていただきたいのですが。 よろしくお願いします。
補足
早速ありがとうございます。 マクロでの処理を行いたいのですが。 よろしくお願いします。