Sub test_sum()
last_row_in_Process_sheet = Application.Workbooks(file_name).Worksheets("ms").Range("a65536").End(xlUp).Row
atmCurrentSum = Application.WorksheetFunction.Subtotal(9,Range("AQ3:AQ4533"))
MsgBox last_row_in_Process_sheet
MsgBox atmCurrentSum
End Sub
以上数据是过滤数据,当查询“A”列中最后使用的单元格时,我得到的是“A232”,但我需要的结果为“A255”。
我需要在这里使用哪个功能?
我需要获取 AQ255 上针对 COLUMN AQ 的过滤单元格总数
答案1
在 Excel 中查找第一个空行最简单的方法是使用UsedRange
ActiveSheet.Usedrange.Rows.Count+1
(如果您的数据不是从第一行开始,则使用
ActiveSheet.Usedrange.Row + ActiveSheet.Usedrange.Rows.Count
:)
答案2
将数据转换成表格。然后就可以正常工作了。
- 激活
insert
功能区(菜单) - 选择
table
- 表明你的数据已经有标题
- 进入
说实话,我把这称为 Excel 的一个错误。
如果需要第一个空单元格而不是最后一个非空单元格,请应用 1 行的偏移量
last_row_in_Process_sheet = Application.Workbooks(file_name).Worksheets("ms").Range("a65536").End(xlUp).Offset(RowOffset:=1).Row