CSV > Calc - 文本到日期

Posted

技术标签:

【中文标题】CSV > Calc - 文本到日期【英文标题】:CSV > Calc - Text to Date 【发布时间】:2015-04-10 18:59:10 【问题描述】:

我将一个 CSV 文件导入 Calc。不幸的是,在 Calc 中将文本字段格式化为日期字段会留下前导 '.

我写了以下函数,但继续得到错误 508 - 括号中的错误。我已经重新括号了一堆不同的方法,但我不是很精通 VBA。

=IF('sheet1'!(LEFT(G4, 1) = "'"); ('sheet1'!H4 = (RIGHT(G4, 10))))

【问题讨论】:

【参考方案1】:

OpenOffice 使用分号分隔符而不是 Excel 所需的逗号分隔符。用分号替换 LEFT 和 RIGHT 函数中的逗号。

OpenOffice 在工作表名称后使用点分隔符。用点替换感叹号。

工作表名称必须立即进行单元格名称。将您的第一个工作表名称移动到 LEFT 函数中,使其立即执行 G4。

如果测试为真,IF 函数中的第二个参数是您希望显示的内容。应该没有比较器如 = 意味着你需要删除 "'sheet1'!H4 = "。

执行所有这些步骤将停止错误消息,但不会解决您的问题。

继续,您的 IF 语句是一个电子表格函数。 VBA 用于在 Excel 等 Microsoft Office 产品中编写宏。 StarBasic 与 Calc 中的等价物。您没有在 VBA 或任何其他 Basic 变体中编写任何内容。这两种语言都与电子表格功能无关。您正在编写电子表格方程式。

更重要的是,前导 ' 不被视为单元格内容的一部分,不能被 LEFT 函数检测到,也不能被 RIGHT 函数删除。 最好通过重新打开 CSV 文件并更改导入过滤器设置来解决您的问题,以便将日期正确导入为日期。

第二个选项是突出显示所有带有日期的单元格,然后选择菜单命令 Data->Text To Columns 然后点击 OK。使用“文本到列”后,您可能需要右键单击单元格,选择“设置单元格格式”,查看“数字”选项卡并选择“日期”选项(然后按 OK)。

【讨论】:

以上是关于CSV > Calc - 文本到日期的主要内容,如果未能解决你的问题,请参考以下文章

用于 CSV 导入的 Libreoffice Calc 模板

如何根据日期列在不同的文本/csv文件中转储一个巨大的mysql表?

Openoffice Calc - 更改文本大小写

如何使用 python 将给定的 PDF 提取到文本和表格并将数据存储在 .csv 文件中?

如何获取csv文本的值并插入访问

我们如何使用Windows Powershell脚本替换文本文件中的日期?