Vba 在单元格中插入以0开头的图纸名称
我想给一个单元格命名我的工作表(064149107)。无法更改名称,并且工作簿中有许多工作表 我的代码工作正常,除非工作表的名称以0开头 例如,我在单元格中得到的不是064149107而是64149107 在这之后我正在做一个vlookup,我没有找到匹配项,并且出现了一个错误2042 这是我的密码:Vba 在单元格中插入以0开头的图纸名称,vba,excel,Vba,Excel,我想给一个单元格命名我的工作表(064149107)。无法更改名称,并且工作簿中有许多工作表 我的代码工作正常,除非工作表的名称以0开头 例如,我在单元格中得到的不是064149107而是64149107 在这之后我正在做一个vlookup,我没有找到匹配项,并且出现了一个错误2042 这是我的密码: sht.Cells(LastRowsht + 1, 2) = sht.Name 我也试过: If Left(sht.Name, 1) = "0" Then 'règle
sht.Cells(LastRowsht + 1, 2) = sht.Name
我也试过:
If Left(sht.Name, 1) = "0" Then 'règle le probleme d'un sheet name commencant par 0
sht.Cells(LastRowsht + 1, 2) = "0" & sht.Name
Else
sht.Cells(LastRowsht + 1, 2) = sht.Name
End If
但是我没有工作。此代码将在名称前面加一个勾号
“
字符
sht.Cells(LastRowsht + 1, 2).Value = chr(39) & sht.Name
或者,您可以先将单元格的格式设置为Text
:
sht.Cells(LastRowsht + 1, 2).NumberFormat = "@"
sht.Cells(LastRowsht + 1, 2).Value = sht.Name
你能不能不试试这样的东西:
sht.Cells(LastRowsht + 1, 2).Value = "'" & sht.Name
我没有尝试过,但通过明确地将其设置为文本,我认为它应该可以工作。您应该通过功能区“主页”更改单元格的格式,在“数字”选项卡中,将“常规”更改为“文本”。然后再次运行代码 但请注意,在单元格中填写图纸名称不需要VBA。这可以通过单元内公式实现:
=MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255)
我猜Excel正在将字符串转换为数字。只需将值另存为字符串。请注意,将工作表名称放入单元格并不需要VBA。谢谢,太好了