【问题标题】:How to concatenate date(mm/dd/yyyy) with time (hh:mm:ss) using VBA如何使用 VBA 将日期(mm/dd/yyyy)与时间(hh:mm:ss)连接起来
【发布时间】:2013-11-15 20:51:41
【问题描述】:

我有两个单元格:A1 和 B1

  • A1 的数据格式为mm/dd/yyyy

  • B1 的数据格式为hh:mm:ss

当我使用 VBA 连接两个单元格 A1 和 B1 时,输出包含的格式为 mm/dd/yyyy hh:mm。为什么秒数不显示?我该如何解决这个问题?

注意:

a) 连接后,输出被复制到 A1。

b) 我尝试将日期格式更改为dd/mm/yyyy,在这种情况下它可以正常工作。

【问题讨论】:

  • 当我双击输出单元格时,会出现秒数,但通常不会出现。
  • 注意:我使用的是格式化功能。

标签: excel vba


【解决方案1】:

尝试将C1的格式改为 mm/dd/yyyy hh:mm:ss

【讨论】:

  • dd/mm/yyyy 正在工作 .. 但我需要在 mm/dd/yyyy ..如果是 mm/dd/yyyy ,它不工作
  • 不工作是什么意思? mm/dd/yyyy hh:mm:ss 也可以
  • 输出即将到来,因为 mm/dd/yyyy hh:mm 秒不显示..
  • 谢谢@sam092 ..如下所述,这是数字格式的问题。
  • 好吧:) 有点奇怪。因为那条线在做同样的事情
【解决方案2】:

如果没有看到你的代码,很难确切地知道你在做什么,但我认为你正在指定你正在写入单元格 A1 的值的格式:使用 VBA Format 函数你正在将日期时间转换为一个字符串。

但是,要更改日期在单元格中显示的方式,您需要更改该单元格本身的格式(而不是 值写入它)。否则 Excel 可能会解释单元格中的值并将其重新转换为该单元格的指定数字格式。

您可以像这样在 Excel 2010 窗口中更改单元格的格式:主页 > 数字 > 自定义 > 类型:mm/dd/yy hh:mm:ss

或者,使用 VBA:

Range("A1").NumberFormat = "mm/dd/yy hh:mm:ss"

【讨论】:

  • 非常感谢。知道了..Range("A1").NumberFormat = "mm/dd/yy hh:mm:ss" 有效。
猜你喜欢
  • 1970-01-01
  • 2020-03-07
  • 2015-10-08
  • 1970-01-01
  • 2017-08-21
  • 1970-01-01
  • 1970-01-01
  • 2016-11-06
  • 1970-01-01
相关资源
最近更新 更多