【问题标题】:Copy pasteing concatenated date time values from Excel in the same format as it's seen in Excel以与在 Excel 中看到的格式相同的格式从 Excel 复制粘贴连接的日期时间值
【发布时间】:2017-09-02 14:19:50
【问题描述】:

我在 Excel 中有日期时间单元格。我有一列连接这些日期时间单元格。

当我将日期时间单元格中的值复制粘贴到记事本++ 时,该值显示正确,例如:6.1.2016 23:00

但是当我复制粘贴连接所有日期时间值的列的内容时,这些值以以下格式显示:42375,875

我需要将excel中的粘贴复制到sql脚本中,sql当然认为逗号分隔了两个不同的值,事实并非如此。

我如何以这种格式复制粘贴所有这些:6.1.2016 23:00 和 NOT 这种格式:42375,875

【问题讨论】:

    标签: excel vba date


    【解决方案1】:

    这样试试

    注意:我在这里使用了 m.dd.yyyy 日期格式。你可以根据你的要求改变它

    =TEXT(DATE,"m.dd.yyyy ")&TEXT(TIME,"hh:mm")

    如果日期在列 A 中,时间在列 B 中 将此公式粘贴到 C

    列中

    =TEXT(A2,"m.dd.yyyy ")&TEXT(B2,"hh:mm")

    【讨论】:

    • 补充到上面,也许要提个醒。根据您使用的 TSQL 版本,您可能无法选择使用 DataTime 数据类型。根据我的经验,如果您没有此功能,那么您需要将日期和时间设置为以下格式 YYYY/MM/DD HH:MM:SS。您在 Excel 工作表上看到的数字是相同的日期时间,但表示方式不同。您可以(正如其他人建议的那样)单击单元格并将格式更改为更传统的格式以使其看起来正确。
    【解决方案2】:

    42375.875 是 DateTime 值的内部表示(2016 年 1 月 6 日晚上 9:00:00),它似乎是正确的。只需将 Excel 单元格格式设置为日期(从菜单),它应该显示正确的日期值。 T-SQL 将DateTime 字段也应该识别代表正确日期的数字42375.875。希望这可能会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-11-03
      • 2022-07-01
      • 2016-02-20
      • 2021-03-13
      • 1970-01-01
      • 2011-02-06
      • 2017-04-18
      相关资源
      最近更新 更多