VBA Excel:防止Excel将字符串格式化为日期

kar*_*ell 5 excel vba

快速提问:

我想10/3在单元格中插入一个类型的字符串,如下所示:

Worksheets("Sheet1").Range("A1").Value = "10/3"
Run Code Online (Sandbox Code Playgroud)

但Excel会自动将单元格格式化为日期或数字.我想把它作为一个字符串.

如何使用VBA实现这一目标?

fun*_*unk 17

Worksheets("Sheet1").Range("A1").NumberFormat = "@"
Worksheets("Sheet1").Range("A1").Value = "10/3"
Run Code Online (Sandbox Code Playgroud)

  • 这有效.为什么?因为VBA语言设计团队的某个人喝醉了,并认为这很有趣; 我敢肯定. (5认同)

Sea*_*anC 7

'在值之前添加单引号- 在您的示例中,它将生成该行

Worksheets("Sheet1").Range("A1").Value = "'10/3"
Run Code Online (Sandbox Code Playgroud)

或者,如果您有一个保存数据的变量

Worksheets("Sheet1").Range("A1").Value = "'" & MyValue
Run Code Online (Sandbox Code Playgroud)