如何在VBA中将单元格的自定义格式更改为Generic“randomtext”?

时间:2017-06-01 22:14:16

标签: excel vba excel-vba

如果我手动更改它可以正常工作。

如果那时我运行:

Sub cellformat()  
  ShowCellFormat = Range("A1").NumberFormat  
  MsgBox ShowCellFormat  
  Range("A2").NumberFormat = ShowCellFormat  
End Sub  

这也有效,msgbox显示:

  

通用“随机文字”

我唯一无法管理的是改变这样的格式:

Range("A1").NumberFormat = "Generic "randomtext""  

尝试了100种不同的方法......

1 个答案:

答案 0 :(得分:2)

假设您希望您的数字格式类似于"XYZ"0000"DEF",以将15显示为XYZ0015DEF,那么您就无法将代码编写为

Range("A1").NumberFormat = ""XYZ"0000"DEF""
'or
'Range("A1").NumberFormat = "Generic "randomtext""

您需要将代码编写为:

Range("A1").NumberFormat = """XYZ""0000""DEF"""
'or
'Range("A1").NumberFormat = "Generic ""randomtext"""

因为字符串文字中使用的每个双引号(即")都需要通过将其写为""进行转义。