- ベストアンサー
Excel で困っています・
Excelで特定のセルの値が指定されたものである場合には行全体を非表示にする事が出来るのでしょうか?例えば A B C D E F 1 0 2 10 3 15 4 0 5 0 6 35 上図の場合「D欄の数字が0であれば行全体を非表示にする。」という場合の処置はどうすれば良いのでしょうか? お分かりの方がいらっしゃいましたら、ご教授ください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
#1の方のご指摘の通り、データ入力と連動して自動的に非表示にするにはVBAを使用しなければ無理と思われます。 手順 1)シートタブを右クリック「コードの表示」 2)右側のエディタエリアに下記コードを貼り付け 3)シートに戻る これで、D列のどこかのセルに0を入力するとその行が非表示になります。 D列のどこかのセルに reset を入力すると全行表示に戻ります。 また、D列のどこかのセルに hide を入力すると、D列の値が0の行全てを非表示にします。 Private Sub Worksheet_Change(ByVal Target As Range) Dim rIdx As Long Select Case CStr(Target.Value) Case "0" Target.Rows.Hidden = True Case "reset" Cells.EntireRow.Hidden = False Case "hide" For rIdx = 1 To Range("D65536").End(xlUp).Row If CStr(Cells(rIdx, 4).Value) = "0" Then Rows(rIdx).Hidden = True Next End Select End Sub
その他の回答 (2)
1行目に、行全体に条件付き書式を設定します。 条件:=AND($D1<>"",$D1=0) 書式:フォントを白に これを必要なだけ下へコピーします。
- hallo-2007
- ベストアンサー率41% (888/2115)
ご希望は、例えば D2セルに 0 と入力した途端に 2行目が非表示になる。 という事でしょうか、であれば VBAの力を借りる事になります。 この場合、また D2に何か入力したいときに手作業で表示に切り替えることになります。 少し違いますが、D列に数値を入力した後に、オートフィルターで D列が 0 以外を表示する。 では、ダメでしょうか。
お礼
有難うございました。取敢えずオートフィルターで処理できました。 VBAでの解決は後程トライしてみます。