Ton*_*nyP 2 excel vba excel-vba
我试图基于a命名一个范围.然后将该范围定义为我的变量,这样我就可以将变量输入到另一个函数中.当我运行代码时,我得到一个类型不匹配错误.
Sub Faked()
Dim r As Range
Cells.Find(What:="EE status", After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
Range(Selection, Selection.End(xlDown)).Name = "Win"
Set r = ("Win")
End Sub
Run Code Online (Sandbox Code Playgroud)
因为斯科特这么说.尝试Set r = range("Win")
要测试是否r正确选择了范围,可以做到
for each c in r
debug.print c
next
Run Code Online (Sandbox Code Playgroud)
编辑:或者如果你像Dirk一样酷,
Set r = [Win]
Run Code Online (Sandbox Code Playgroud)
用以下代码替换代码:
Dim r As Range
Cells.Find(What:="EE status", After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
Set r = Range(Selection, Selection.End(xlDown))
r.Name = "Win"
Run Code Online (Sandbox Code Playgroud)
说明:
您不能将SET命令与范围对象的name属性一起使用.首先需要使用范围选择填充对象,然后您可以使用对象的属性为其指定值,在本例中为它的Name属性.
希望有所帮助!
| 归档时间: |
|
| 查看次数: |
48 次 |
| 最近记录: |