【问题标题】:Is there a way to generate a string that can be pasted into Excel with generic formatting (i.e. bullets, in-cell line-breaks)有没有办法生成可以粘贴到 Excel 中的通用格式(即项目符号、单元格内换行符)的字符串
【发布时间】:2013-07-03 23:53:38
【问题描述】:

我的客户有一个充满 HTML 表格形式数据的网站。该网站的一个功能是从 HTML 表中选择各种行并将行的内容(连同其他数据)复制到剪贴板。客户端希望此结果字符串的格式保持某些单元格内格式,例如换行符和项目符号。

目前我正在使用带有 AJAX 回调的零剪贴板来生成内容并将其复制到剪贴板。这部分工作正常。

我已处理结果字符串以使用 "\t" 字符来分隔一行中的单元格,并使用 "\n" 来分隔行。过去我迷路了。

有没有办法将项目符号字符和单元格内换行符编码为 UTF-8 字符串,以便在进入 Excel 时保留格式?

Web 服务器正在运行带有 PHP 5.3 的 Apache。

【问题讨论】:

  • 创建 excel 文件而不是从 html 复制粘贴到 excel 会更好吗?
  • 如果您使用制表符或逗号分隔值文件,格式将不会被保留,因为该格式仅支持没有任何格式的数据
  • 如果您将内容生成为 HTML,并将所有数据放入 HTML 表中,包括用于项目符号字符的 UL/LI 元素,会发生什么情况?
  • 顺便说一句,您是否查看过网络查询 office.microsoft.com/en-gb/excel-help/… 以“正确”地将内容推送到 Excel 中?如果你能让它发挥作用,这比通过 Javascript 自己重新发明它要可靠得多,这将不可避免地变得不稳定。
  • 我同意导出文件会更容易,但客户有一个非常具体的用例,他们希望将小块数据从网站拖放到预先存在的 Excel 工作表中作为参考数据。

标签: php excel encoding utf-8 copy


【解决方案1】:

我为这个问题找到的解决方案一直摆在我面前。

当您将 HTML 代码粘贴到 Excel 中时,它会将所有 HTML 字符转换为其实体 (

虽然我永远无法在 Excel 中添加项目符号点,但通过使用内联 css 生成表格元素,我能够创建表格,即使具有背景颜色和边框等一些样式。 Excel 正确处理了行和列跨度,并且仍然保留了一些格式。这满足了客户的需求,并且与我认为您可以得到的差不多。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-06-28
    • 1970-01-01
    • 1970-01-01
    • 2012-02-14
    • 2013-02-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多