0
私は以下のコードで2つの問題があります。まず、オートフィルター機能を使用して列をフィルター処理しているときのすべてをオフにします。いくつかの設定では適切な方法で動作していますが、条件パラメータで文字列を変更すると、すべての行が非表示になることがあります。それがなぜ起こるかわからない。他にもIFループの問題があります。私はパーセント値と比較しています。オートフィルタはすべての行を非表示にします&比較の問題ごとに
だから、55%は0.5512321のようになります。例のように、50%未満の値しか見つけられません。
Sub code()
Dim ws As Worksheet, example As Integer, rng As Range, cl As Range
Set ws = Sheets("THAT")
With ws
On Error Resume Next
.ShowAllData
.Cells.AutoFilter Field:=16, Criteria1:="m_M"
.Cells.AutoFilter Field:=18, Criteria1:=""
.Cells.AutoFilter Field:=17, Criteria1:="m_C"
Set rng = Range("T4", "T24000")
For Each cl In rng.SpecialCells(xlCellTypeVisible)
example = cl.value
If example <= 0.6 Then
cl.Interior.ColorIndex = 22
Else
End If
Next cl
End With
Set ws = Nothing
End Sub
まず、あなたは完全に'設定しRNG = .Range( "T24000 T4")にご 'rng'、変更を修飾する必要があります。次に、 'If cl.Value2 <= 0.6 Then'を使用して、セルの値を比較します(パーセンテージ形式部分を削除します)。 –
'Example As Integer' - 整数???? – SJR
@SJRありがとう、それは適切な値を見つけるのに役立ちます。とにかく、すべての行を隠すことについての質問はまだ開いています。 – RafMil