kav*_*ter 3 excel vba excel-vba
出于某种原因,下面的代码在第二行失败,运行时错误"1004"表示"对象'_Application'的"方法'相交'失败"在某些情况下,我试图修改代码,它产生'_Global '失败.更奇怪的是,我已经玩过这个代码的各种版本,有时在调试模式下进行了很多更改之后我重试了这个表单,然后运行了.如果我然后尝试重新运行代码,它会再次失败.
rng1是来自同一列的一组单元格,rng2是多列上的一组单元格,其行数与rng1相同
例如rng1 = {A2:A10},rng2 = {D2:H10}
指令将单元格rng2中的单元格值相对于rng1中的单个条目保存到数组中.我已经检查过范围是在同一张纸上,有效和(在命名的地方)是引用正确的单元格.
For Each c In Range("rng1").Cells
For Each d In Application.Intersect(Rows(c.Row), Range("rng2")).Cells
*some instructions here*
Next d
Next c
Run Code Online (Sandbox Code Playgroud)
试试这个,你的代码唯一一次给我造成错误的时候是交叉路口最后是空的.
Dim c As Range, d As Range
Dim rng As Range
For Each c In Range("test1")
Set rng = Application.Intersect(Rows(c.Row), Range("test2"))
If rng Is Nothing Then
'' Empty intersection ''
Debug.Print "Empty"
Else
For Each d In rng
'' some instructions here ''
Debug.Print d.Address
Next d
End If
Next c
Run Code Online (Sandbox Code Playgroud)
当然,你或许也应该前缀你Range并Rows与板材,如:
Sheet1.Rows
Run Code Online (Sandbox Code Playgroud)
和
Sheet1.Range("test1")
Run Code Online (Sandbox Code Playgroud)
诸如此类......
| 归档时间: |
|
| 查看次数: |
2587 次 |
| 最近记录: |