在跨两个子过程传递范围时遇到问题。你能建议可能的错误吗?
我在VBA中定义了两个子过程。在第一个子过程中,我有一个单元格(3X3 MATRIX),以“ ABC”命名,我将其复制到另一个单元格“ PQR”中。这正在工作:)
当值从ABC复制到PQR时,我想启用“所有边界”。为此,我录制了一个宏。
但是,每当我运行此子过程时,都会出现一个错误,即对象不存在。
我以以下方式调用了宏:
All_border_test PQR
子过程的代码如下:
Sub All_borders_test(d As Range)
Range(d).Select
' Recorded Macro to enable all borders (its working)
End Sub()
1-看一下:
在Excel 2013 VBA中引用命名单元格的正确方法是什么?(我知道我搞砸了)
和
名为范围ActiveSheet的VBA参考
2-将您的代码修复为:
Sub All_borders_test(d As Range)
d.Select ' old code was: Range(d).Select
End Sub 'no parenthesis here
3-您可以All_borders_test
使用以下呼叫之一进行呼叫:
Call All_borders_test([PQR])
Call All_borders_test(Range("PQR"))
Call All_borders_test(Sheet1.Range("PQR")) ' assuming that PQR range exists in Sheet1
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句