在我正在处理的 excel 宏中,我将过滤后的数据复制到新工作表以删除隐藏的行。这使我可以对用户过滤的数据运行更复杂的公式。对于经过复杂过滤的大型数据集,复制操作不再只获取过滤后的数据,而是复制所有数据。
手动复制过程时,当我尝试复制过滤的数据时,Excel 给了我“数据范围太复杂”的错误。这很容易通过排序然后过滤来解决,但是我不知道如何在 VBA 中捕获这个错误。我想知道复制操作是否正常工作(并允许宏继续)或者选择是否太复杂(并停止宏并提醒用户先尝试排序)。
知道我该怎么做吗?任何帮助,将不胜感激。
相关代码如下:
Select Case Range("GDT_Filtered").Value
Case "Filtered Data"
Worksheets.Add after:=Worksheets(Worksheets.Count)
Set wRaw = ActiveSheet
Sheets("Raw Data").Select
lastRow = Range("A1").End(xlDown).Row
Range("A1:S" & lastRow).Copy Destination:=wRaw.Range("A1")
Case "All Data"
Set wRaw = Sheets("Raw Data")
On Error Resume Next
wRaw.ShowAllData
On Error GoTo 0
End Select
谢谢!
山姆