【问题标题】:Problems with converting text to date (YYYY-MM-DD) in Excel (Mac)在 Excel (Mac) 中将文本转换为日期 (YYYY-MM-DD) 的问题
【发布时间】:2014-09-15 13:42:45
【问题描述】:

我已经能够将此日期转换为 YYYY-MM-DD HH:mm 但现在不行了。我该怎么做才能转换这个日期。

2014 年 9 月 15 日上午 9:30:32

您需要知道我使用的是瑞典语键盘、日期和地区。

例子:

Order # Purchased On 100026881 Sep 15, 2014 9:30:32 AM 100026880 Sep 15, 2014 9:10:56 AM 100026879 Sep 15, 2014 9:09:10 AM 100026878 Sep 15, 2014 9:03:27 AM 100026877 Sep 15, 2014 8:57:02 AM 100026876 Sep 15, 2014 8:38:37 AM 100026875 Sep 15, 2014 6:54:29 AM 100026874 Sep 15, 2014 5:03:23 AM 100026873 Sep 15, 2014 2:45:50 AM 100026872 Sep 15, 2014 1:42:26 AM 100026871 Sep 14, 2014 11:20:31 PM 100026870 Sep 14, 2014 11:16:29 PM 100026869 Sep 14, 2014 11:11:15 PM 100026868 Sep 14, 2014 11:10:06 PM 100026867 Sep 14, 2014 10:42:56 PM 100026866 Sep 14, 2014 10:41:22 PM 100026865 Sep 14, 2014 10:36:43 PM 100026863 Sep 14, 2014 10:26:13 PM

【问题讨论】:

  • 请提供一些详细信息,说明您尝试转换的方式无效。
  • 您使用的是哪个 Office 版本? Office 2011?
  • Office 2011 for Mac,我正在尝试使用格式单元格和日期,但没有成功。
  • 是从网站复制的吗?也许其中一个或多个空格实际上是不间断空格(例如 CHAR(160) 与 CHAR(32))
  • 日期来自一个magento数据库(从一开始就是一个csv文件,用文本转换成数据),我不能改变日期的输出标准。

标签: excel date datetime excel-formula excel-2011


【解决方案1】:

在 Excel 2011 for Mac 中格式化日期

您至少有三种不同的方式来应用日期格式。也许最快的方法是选择一个单元格或单元格范围,然后单击功能区的Home tab。在Number组中,点击Number group title下的pop-up button,选择Date,将日期显示为m/d/yy,其中m代表month的编号,d 表示day 数字,yy 表示两位数的year

Excel 具有更多内置日期格式,您可以通过按 Command-1 并单击“数字”选项卡显示“设置单元格格式”对话框来应用这些格式。您还可以通过单击功能区上的“主页”选项卡来显示“设置单元格格式”对话框的“数字”选项卡。然后单击数字组标题下的弹出按钮,并从弹出菜单中选择自定义。

当显示单元格格式对话框时,选择日期类别。从列表中选择一个类型。选择不同的位置(语言)或日历类型会更改提供的日期类型。

我希望这可能会有所帮助..

【讨论】:

  • 这就是迄今为止它不适用于选择单元格和格式化单元格的问题。我不知道为什么。 @加根
【解决方案2】:

这应该是一个评论,因为我既没有瑞典设置也没有 Mac,但我建议使用查找表:

+-----+----+ |一月 | 1 | |二月 | 2 | |三月 | 3 | |四月 | 4 | |五月 | 5 | |君 | 6 | |七月 | 7 | |八月 | 8 | |九月 | 9 | |十月 | 10 | |十一月 | 11 | |十二月 | 12 | +-----+----+

说叫 Marray,以及:

 =TEXT(DATE(MID(B2,9,4),VLOOKUP(LEFT(B2,3),Marray,2,0),MID(B2,5,2))+VALUE(TRIM(RIGHT(B2,11))),"[$-41D]mmmm dd, yyyy h:mm:ss AM/PM")  

在 C2 中并复制下来以适应(假设 Sep 15, 2014 9:30:32 AM 在 B2 中)。

对于单个数字日期,也许:

=TEXT(DATE(TRIM(MID(B2,8,5)),VLOOKUP(LEFT(B2,3),Marray,2,0),SUBSTITUTE(TRIM(MID(B2,4,3)),",",""))+VALUE(TRIM(RIGHT(B2,11))),"[$-41D]mmmm dd, yyyy h:mm:ss AM/PM")

对我来说(Windows、Excel 2013、英语!)返回:

可能需要将所有 ,s 替换为 ;,除了 SUBSTITUTE 中的一个。

【讨论】:

  • 感谢@pnuts 的回复,但是“$-41D”是做什么的?
  • 当日期更改字符数时此代码出现问题。 100026642 Sep 9, 2014 11:54:55 PM
  • 这很令人困惑,因为我的同事可能会在 OSX 更新之前对日期进行排序...@pnuts
【解决方案3】:

我认为Jeeped 可能接近问题所在。

我的猜测是,现在数据可能已被粘贴为文本,而不是识别日期。 (pnuts 有答案,但它比使用内置 Excel 函数要多得多。)

如果日期在自己的列中,例如:

     Sep 15, 2014 9:30:32 AM
     Sep 15, 2014 9:10:56 AM
     Sep 15, 2014 9:09:10 AM
     etc

那么您可能必须让 Excel 来解析文本日期。

如果日期文本在B2 中,则将此公式放在另一个单元格中(例如B3):

     =DATEVALUE(B2) + TIMEVALUE(B2)

然后您可以使用此自定义格式字符串进行格式化:yyyy-mm-dd h:mm:ss AM/PM

这会给你:

      2014-09-15 9:30:32 AM
      2014-09-15 9:10:56 AM
      2014-09-15 9:09:10 AM
      etc.

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-13
    • 2022-11-17
    • 1970-01-01
    • 2019-03-28
    • 1970-01-01
    • 1970-01-01
    • 2023-03-26
    相关资源
    最近更新 更多