我有一个电话号码作为字符串存储在 Excel 中,Excel 文件已成功创建并且数据没有错误,但每个电话号码旁边都有一个“数字存储为文本”错误。
我在网上读到我应该使用 excel 中包含的特殊电话号码格式或自定义 000-000-0000 格式。我可以使用 excel 程序设置这些,但不能从我的 Java 代码中设置。
我四处寻找有关 setCellType 和 DataFormat 的信息,但我认为 CellType 必须是 String 并且我不知道如何将 DataFormat 用于除日期之外的任何内容。
我也看过 DataFormatter 但我不明白如何使用它来存储数据。看起来它只是为了帮助读取数据。http://poi.apache.org/apidocs/org/apache/poi/ss/usermodel/DataFormatter.html
我该如何执行以下任一操作?
1) 将单元格标记为“忽略错误”,以忽略“数字存储为文本”错误
2) 利用内置的 Excel 单元格格式“特殊 > 电话号码”
对于 1) 似乎有一个标志通过保存和关闭文件持续存在,我不知道如何使用 POI 编辑或查看它。有一篇关于它的帖子:
excel 文档的第 669 页和第 670 页涵盖了 FeatFormulaErr2,它保存在 FeatRecord 共享功能中,理论上允许您存储这样一个事实:单元格范围应忽略“数字作为文本”
我们还有两个测试文件,一个打开警告,一个关闭警告 - 46136-NoWarnings.xls 和 46136-WithWarnings.xls。然而,我没有创造它们!
尼克 http://mail-archives.apache.org/mod_mbox/poi-user/201003.mbox/%3C27823222.post@talk.nabble.com%3E
看来这可以在 VBA 中完成,cell.Errors.Item(xlNumberAsText).Ignore = True
但 POI 似乎没有等价物