2016-11-18 18 views
0

Excel VBAでは、フィルタ条件が満たされない場合にカウントをゼロとして表示したい場合は、フィルタされた行の正確な数を表示します。ただし、結果が基準を満たしていない場合や、1つの結果が基準を満たしている場合でもカウンタは1を表示します。条件が満たされていない場合のExcelオートフィルタ

On Error Resume Next 
If .Range("D3", Range("D" & Rows.count).End(xlUp)).Offset(1, 0).SpecialCells(xlCellTypeVisible).Value = "" Then 
MsgBox "vs4 is zero" 
V_S4 = 0 
ThisWorkbook.Sheets(3).Range("E5").Value = V_S4 
Else 
V_S4 = .Range("D3", Range("D" & Rows.count).End(xlUp)).SpecialCells(xlCellTypeVisible).count 
ThisWorkbook.Sheets(3).Range("E5").Value = V_S4 
End If 
+0

フィルタリングするデータの詳細を指定したい場合があります。 – user3598756

+0

ヘッダがまだ表示されていないのですか?データをフィルタリングしてヘッダーを作成すると、ヘッダーが表示されます。あなたの範囲にはヘッダーも含まれていますか? – Niclas

+0

どうしたの?私の答えはあなたのために働いたのですか? –

答えて

0
Dim lrow, i As Integer 

lrow = Cells(rows.Count, 4).End(xlUp).Row + 1 

i = WorksheetFunction.CountA(Range("D1:D" & lrow).SpecialCells(xlCellTypeVisible)) - 1 

If i=0 then 
MsgBox "vs4 is zero" 
V_S4 = 0 
Else 

私は、これは動作するはずと信じて、私は、私は必要に応じてそれを他のやってみることに熱心だしてください結果を知ることができます。

関連する問題