2016-04-29 12 views
0

Excelで検索と置換を使用して、列Aから列Cの値を保持する列からすべてのゼロを削除したいと考えています。したがって、A2-C2、A3- C3などが含まれていますが、オプションで[マッチケース/完全一致のコンテンツ]や他の組み合わせを試したにもかかわらず、その式が機能しないためです。これは簡単な質問ですが、すべての質問が数式の一部を見つけて何か他のものに置き換えることに向けられているように、答えを見つけにくいです。Excelの式を含むセルの値を検索して置換する2016

+0

:今、あなたは0's#Errorsの外に空にして、コードを実行したい範囲を選択?データが変更されたらどうなりますか?あなたは式を置き換えるべきですか?カスタム数値形式か 'ActiveWindow.DisplayZeros = False'のどちらかを使ってゼロを表示しないのはなぜですか?フォーミュラの必要性を完全に取り除く、Worksheet_Changeのようなイベントドリブンマクロはどうでしょうか?式が単にゼロよりも長さがゼロの文字列(たとえば '' '')を返すだけの場合はどうでしょうか? – Jeeped

答えて

1

「0」または「#VALUE」を表示したくない場合は、これらの列では、これらの値を出力として除外するような式を書き直しています(sumまたはavg関数はこれらのセルを除外します)。 「iferror」または「if」式を使用して除外してみてください。以下の例を参照してください。 =IF(H8*G8 = 0,"",H8*G8)

  • を#VALUE除く:if文使って0を除く

    • ! IFERRORを使用して:あなたは、0と#VALUEの両方を除外したい場合は=IFERROR(IF(G20*H20 = 0," ",G20*H20),"")

    =IF(H8*G8 = 0,"",H8*G8)

  • を組み合わせIFERROR/if文を使用して0と#VALUEを除きます!あなたが数式を組み合わせることができます。 enter image description here

    enter image description here

  • 0

    は、あなたが式の全範囲を書き換えしたくないと仮定すると、あなたダンがVBA経由でそれを行う.Justペースト(Altキー + F11を打つ)ことそこのどこかのコード。なぜあなたはゼロになる数式を削除しようとしている

    Sub RemZeroErr() 
        Dim rng As Range 
        For Each rng In Intersect(Selection, Selection.Parent.UsedRange).Cells 
        If IsError(rng) Then 
         rng.Value = "" 
        ElseIf rng.Value = 0 Then 
         rng.Value = "" 
        End If 
        Next 
    End Sub 
    
    関連する問題