【问题标题】:Assigning cell value changes its type分配单元格值会更改其类型
【发布时间】:2015-10-28 20:46:39
【问题描述】:

我的函数返回不同的字符串值。
例如:8:157B
我将它分配给这样的单元格:

MonthDaysRange1.Cells(1, i).Value = DayValue(i, MonthNum)

之后,Excel 将单元格的格式更改为时间。单元格变为8:15:00。我不想那样。
即使我使用这个:

MonthDaysRange1.NumberFormat = "String"

单元格值仍为8:15:00
我只想用文本填充单元格,而不更改格式。

【问题讨论】:

  • 试试这个:.NumberFormat = "@"

标签: vba excel


【解决方案1】:

如果你想强制一个字符串,那么在它前面加上'

Range("A3").Value2 = "'8:15"

【讨论】:

  • 如果使用 Value2,则不需要 '
  • @Fratyx - Value2 不适用于 write ;字符串在输入时被转换为时间值
【解决方案2】:

试试这个:

With MonthDaysRange1.Cells(1, i)
     .NumberFormat = "@"
     .Value = DayValue(i, MonthNum)
End With

测试

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-28
    • 2023-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-10
    相关资源
    最近更新 更多