Excel 名称管理器错误 公共函数updateNameManager(名称作为范围) Dim s作为新的cStringClass 调暗a作为范围,单元格作为范围 关于GoTo handleIt错误 每个人都有一个名字 s、 添加字母数字a.值 设置单元格=a.Offset(0,10) Debug.Print s.TheString&“”单元格地址 ThisWorkbook.Worksheets(“试剂”).Names.AddNameLocal:=s.TheString,referesto:=cell
尝试以下操作: 有关详细信息,请参见注释Excel 名称管理器错误 公共函数updateNameManager(名称作为范围) Dim s作为新的cStringClass 调暗a作为范围,单元格作为范围 关于GoTo handleIt错误 每个人都有一个名字 s、 添加字母数字a.值 设置单元格=a.Offset(0,10) Debug.Print s.TheString&“”单元格地址 ThisWorkbook.Worksheets(“试剂”).Names.AddNameLocal:=s.TheString,referesto:=cell,excel,vba,Excel,Vba,尝试以下操作: 有关详细信息,请参见注释 Public Function updateNameManager(name As Range) Dim s As New cStringClass Dim a As Range, cell As Range On Error GoTo handleIt For Each a In name s.addAlphaNumeric a.Value
Public Function updateNameManager(name As Range)
Dim s As New cStringClass
Dim a As Range, cell As Range
On Error GoTo handleIt
For Each a In name
s.addAlphaNumeric a.Value
Set cell = a.Offset(0, 10)
Debug.Print s.TheString & " " & cell.Address
ThisWorkbook.Worksheets("Reagents").Names.Add NameLocal:=s.TheString, RefersTo:=cell <---- 1004 error
s.Clear
Next a
handleIt:
Debug.Print "update... " & Err.Number & " " & Err.Description
End Function
子测试()
变暗rngTest As范围
“/添加工作簿作用域。(由于命名错误,此操作将失败)
设置rngTest=Sheet1.范围(“a5”)
Debug.Print“Name Added:”&addName(rngTest,######Test#u WB),True)
“/Add with工作表作用域
设置rngTest=Sheet1.范围(“b5”)
Debug.Print“Name Added:”&addName(rngTest,“Test_WKS”,False)
端接头
公共函数addName(rngRangeTobeAdded作为范围,strName作为字符串,可选bWorkbookLevel作为Boolean=True)作为布尔值
作为布尔值的Dim-bResult
将父对象设置为工作簿
工作表格式
bResult=False
关于错误转到错误处理程序
如果rngRangeTobeAdded不是Nothing,则为strName vbNullString,然后
“/Set父容器
设置wksParent=rngRangeTobeAdded.Parent
设置wbParent=wksParent.Parent
如果不是bWorkbookLevel,则
“/添加本地
wksParent.Names.Add strName,rngRangeTobeAdded
bResult=True
其他的
“/添加全局
wbParent.Names.Add strName,rngRangeTobeAdded
bResult=True
如果结束
如果结束
错误处理程序:
如果错误号为0,则
bResult=False
如果结束
addName=bResult
端函数
试试这个:
有关详细信息,请参见注释
Public Function updateNameManager(name As Range)
Dim s As New cStringClass
Dim a As Range, cell As Range
On Error GoTo handleIt
For Each a In name
s.addAlphaNumeric a.Value
Set cell = a.Offset(0, 10)
Debug.Print s.TheString & " " & cell.Address
ThisWorkbook.Worksheets("Reagents").Names.Add NameLocal:=s.TheString, RefersTo:=cell <---- 1004 error
s.Clear
Next a
handleIt:
Debug.Print "update... " & Err.Number & " " & Err.Description
End Function
子测试()
变暗rngTest As范围
“/添加工作簿作用域。(由于命名错误,此操作将失败)
设置rngTest=Sheet1.范围(“a5”)
Debug.Print“Name Added:”&addName(rngTest,######Test#u WB),True)
“/Add with工作表作用域
设置rngTest=Sheet1.范围(“b5”)
Debug.Print“Name Added:”&addName(rngTest,“Test_WKS”,False)
端接头
公共函数addName(rngRangeTobeAdded作为范围,strName作为字符串,可选bWorkbookLevel作为Boolean=True)作为布尔值
作为布尔值的Dim-bResult
将父对象设置为工作簿
工作表格式
bResult=False
关于错误转到错误处理程序
如果rngRangeTobeAdded不是Nothing,则为strName vbNullString,然后
“/Set父容器
设置wksParent=rngRangeTobeAdded.Parent
设置wbParent=wksParent.Parent
如果不是bWorkbookLevel,则
“/添加本地
wksParent.Names.Add strName,rngRangeTobeAdded
bResult=True
其他的
“/添加全局
wbParent.Names.Add strName,rngRangeTobeAdded
bResult=True
如果结束
如果结束
错误处理程序:
如果错误号为0,则
bResult=False
如果结束
addName=bResult
端函数
如果您认为它必须是cell.address,或者您可能已经有了一个名字,请尝试.names.add NameLocal:=“TESTINGNAME”……谢谢您的快速回复。。尽管它没有:(s.TheString的值是多少??它保存单元格的字符串值,并且仅为字母数字。没有空格。例如,它会将“Warbinder's Ink”更改为“WarbindersInk”,认为它需要是cell.address,或者您可能已经有了名称,请尝试。names.add NameLocal:=“TESTINGNAME”,…感谢您的快速回复..虽然它没有,但是:(s.TheString的值是多少?它保存单元格的字符串值,并且仅为字母数字。没有空格。例如,它将“Warbinder's Ink”更改为“WarbindersInk”谢谢@cyboashu做了这个把戏。如果我有足够的票数来投票的话!谢谢@cyboashu做了这个把戏。如果我有足够的票数来投票的话!