在VBA中,使用Excel 2016,我試圖計算給定範圍的非空單元格的數量,但僅使用單元格整數引用。我試過以下內容:VBA - 使用單元格參考計算非空單元格
WB.Sheets(1).Range(Cells(2, X), _
Cells(2, Y)).Cells.SpecialCells(xlCellTypeConstants).count
其中X和Y是列的單元格引用。請協助。
在VBA中,使用Excel 2016,我試圖計算給定範圍的非空單元格的數量,但僅使用單元格整數引用。我試過以下內容:VBA - 使用單元格參考計算非空單元格
WB.Sheets(1).Range(Cells(2, X), _
Cells(2, Y)).Cells.SpecialCells(xlCellTypeConstants).count
其中X和Y是列的單元格引用。請協助。
試試這個:
Range(WB.Sheets(1).Cells(2, X), _
WB.Sheets(1).Cells(2, Y)).Cells.SpecialCells(xlCellTypeConstants).count
您應該在單元格之前而不是範圍之前添加工作簿和工作表
嘗試了這種方式:
Dim nonBlanck as long
nonBlanck = WorksheetFunction.CountA(WB.Sheets(1). _
Range(Cells(2, X), Cells(2, Y)). _
SpecialCells(xlCellTypeConstants))
但是,如果WB.SHeets(1)
不活躍,那麼你可能有一些問題。因此這種改進方案嘗試:
Dim nonBlanck as long
With WB.Sheets(1)
nonBlanck = WorksheetFunction.CountA(_
.Range(.Cells(2, X), .Cells(2, Y)). _
SpecialCells(xlCellTypeConstants))
End With
因爲你可能知道你可以做到這一點使用Excel公式。
您可以在VBA中使用也使用這樣的:
with WB.sheets(1)
WorksheetFunction.CountA(Range(.Cells(2, X), .Cells(2, Y)))
end with
備受讚賞! –