|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
本帖最后由 gzclc 于 2024-3-15 22:21 编辑
以下代码在《测试》使用正常,复制到相同格式的《应用》却出现问题,请教大神问题出在那里?如何解决?
在应用中使用 以下代码出现:运行时错误‘1004’,方法‘Range’作用于对象‘-Worksheet’时失败,调试指向 ir = Sheet14.Range("a100000").End(xlUp).Row 代码
Sub fjsgfh()
Dim i, ir, m, arr, brr(), tt
Dim dc As Object
Set dc = CreateObject("scripting.dictionary")
tt = Timer
ir = Range("a2").End(xlDown).Row
arr = Range("a2:V" & ir + 1)
For i = 2 To ir - 1
If arr(i, 18) = arr(i + 1, 18) Then
If dc.exists(arr(i, 18)) = False Then
dc(arr(i, 18)) = ""
m = m + 1
ReDim Preserve brr(1 To 22, 1 To m)
brr(1, m) = arr(i, 17)
brr(2, m) = arr(i, 18)
brr(3, m) = arr(i, 16)
brr(4, m) = arr(i, 19)
brr(5, m) = arr(i, 22)
Else
End If
Else
If dc.exists(arr(i, 18)) = False Then
m = m + 1
ReDim Preserve brr(1 To 22, 1 To m)
brr(1, m) = arr(i, 17)
brr(2, m) = arr(i, 18)
brr(3, m) = arr(i, 16)
brr(4, m) = arr(i, 19)
brr(5, m) = arr(i, 22)
End If
End If
Next
ir = Sheet14.Range("a100000").End(xlUp).Row
If ir > 3 Then
Sheet14.Range("a4:k" & ir).ClearContents
End If
Sheet14.Range("a4").Resize(m, 9) = Application.WorksheetFunction.Transpose(brr)
MsgBox ("统计完成用时:" & Timer - tt & "秒")
Set dc = Nothing
End Sub
|
|