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表?