V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
praynise
V2EX  ›  Go 编程语言

请问有用 excelize 生成 excel 的大大么…请问怎么让单元格的格式为文本呢…文档中木有找到…

  •  
  •   praynise · 2018-03-20 23:28:07 +08:00 · 1652 次点击
    这是一个创建于 2474 天前的主题,其中的信息可能已经有所发展或是发生改变。
    请问怎么让单元格的格式为文本呢…文档中木有找到…有些内容虽然为数字但是需要设置为文本,不然会科学计数法…例如身份证号,谢谢大家了…
    4 条回复    2018-03-21 14:15:52 +08:00
    akira
        1
    akira  
       2018-03-21 01:44:04 +08:00
    试试前面加个单引号
    860670496
        2
    860670496  
       2018-03-21 10:54:35 +08:00
    excelize.SetCellStr(xlsx, "Sheet2", "C11", "Hello")
    praynise
        3
    praynise  
    OP
       2018-03-21 13:41:24 +08:00
    @860670496 你好,我需要使用 setSheetRow 按行插入数据,然后再按照行来统一设定本文,请问可以实现么
    860670496
        4
    860670496  
       2018-03-21 14:15:52 +08:00
    @praynise #3 以前没遇到过这类需求,翻了一下 github 作者并没有搞过针对行列设定格式的函数。
    而且看了看源码按这个包的设计,像身份证号这种情景就只能先确定数据类型再选择对应的函数来写入 xlsx 文件,人家 default 就是这么写的……
    所以你要是不想再造轮子,要做的就是先处理你的数据,变成 str 之后在用 setsheetrow 写进去,这样 default 就不会帮你瞎转了
    加单引号的操作慎用,excel 里这么做 OK 是因为程序有针对这个操作的转换设计,如果你单纯写了一个 xlsx 用于存储数据,从未用 excel 打开过再保存的话,实际上还是存的“‘ 123456789 ”而不是“ 123456789 ”
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2848 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 07:54 · PVG 15:54 · LAX 23:54 · JFK 02:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.