excel - AdvanceFilter 抛出 1004 错误,对象定义错误
问题描述
当我的代码到达高级过滤器行时,我收到运行时错误“1004”:应用程序定义或对象定义错误。
我尝试录制一个可以工作的宏,但是当我将范围调整为动态时,我开始收到错误。我还尝试非常仔细地输入它以按照提示进行操作。
Private Sub LogOffenders()
Dim Month As Integer
Dim SID1001 As Range
Dim MonSID As Range
Dim SIDRowCount As Long
Dim OffCol As Integer
Dim LasMon As Range
Dim UniOff As Long
Dim UniCount As Long
'Count row
SIDRowCount = Worksheets("1001").Cells(Rows.Count, "C").End(xlUp).Row - 1
OffCol = Int(Format(Date, "mm"))
Set SID1001 = Worksheets("1001").Range("C2:C" & SIDRowCount)
Set MonSID = Worksheets("OffLog").Range(Worksheets("OffLog").Cells(2, OffCol), Worksheets("OffLog").Cells(SIDRowCount, OffCol))
If OffCol = 1 Then
Set LasMon = Worksheets("OffLog").Range(Worksheets("OffLog").Cells(2, 12), Worksheets("OffLog").Cells(SIDRowCount, 12))
Else:
Set LasMon = Worksheets("OffLog").Range(Worksheets("OffLog").Cells(2, OffCol - 1), Worksheets("OffLog").Cells(SIDRowCount, OffCol))
End If
'copy SIDs to SID log.
SID1001.Copy
MonSID.PasteSpecial Paste:=xlPasteValues, operation:=xlPasteSpecialOperationNone, skipblanks:=False, Transpose:=False
'Count number of unique SIDs in copied column
LasMon.AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Worksheets("OffLog").Range("P"), unique:=True '**Code breaks here***
UniCount = Worksheets("1001").Cells(Rows.Count, "P").End(xlUp).Row
End Sub
我想复制 P 列中的唯一值,然后计算值的数量。
我收到运行时错误“1004”:应用程序定义或对象定义错误。
解决方案
推荐阅读
- r - 在 JupiterLab 上安装 R 包时出现警告消息:“non_zero 退出状态”
- node.js - Next JS如何根据IP地址重定向用户?
- css - 将 div 与 flex 对齐不能按预期工作
- r - 使用 dplyr 获取基本统计数据(最小值、平均值、最大值、标准差)?
- android - SPINNER 中是否有任何方法可以选择一个项目并显示另一个相关的值?
- powershell - Powershell 脚本 - 解析多个日志文件以提取用户登录日期和时间戳
- c++ - 重新启动我的电脑后的 Visual Studio 错误:无法启动程序 (.exe),系统找不到指定路径
- python - 无法获取单元格的 color.index (openpyxl)
- azure-devops - 我的 Azure DevOps 构建旁边的这些锁定图标是什么?
- excel - 从 Word 到 Excel 的 VBA