【问题标题】:How to make HTML table copy-paste-able to Excel如何使 HTML 表格可以复制粘贴到 Excel
【发布时间】:2016-12-08 03:09:45
【问题描述】:

有一些非常简洁的 Excel,例如 html 电子表格选项,例如 handsontable,但我正在寻找更简单的东西:

如何更改常规表格的 html/css,以便轻松复制粘贴到 Excel 中?

我不是在寻找 Excel 文件生成器,我只需要我的 html 表可以复制粘贴。

Handsontable 和 wijmo flex sheet 可以做到,我的问题是:我需要如何增强常规 html 表格才能做到这一点?

【问题讨论】:

  • 不确定您使用的是哪个版本的 Excel,但从 2007 年起,“数据”选项卡下有一个“来自 Web”选项。从那里您可以导航到包含您的表格的页面并从那里导入它。
  • 我应该更清楚一点:我不希望用户必须进行任何类型的“从网络”导入。只需选择要导入的单元格,按 ctrl+c,转到 Excel 并按 ctrl+v。
  • 复制/粘贴时它到底在做什么?能否将表格的 html 添加到问题描述中?

标签: html css excel


【解决方案1】:

您需要注意平台兼容性。

google drive excel 示例: 这个关键字是'\t'

var date = ['2017-01-01', '2017-01-02', '2017-01-03', '2017-01-04'];
var data = ['1', '2', '3', '4'];
var element = window.document.getElementById('table_data');
element.innerHTML = element.innerHTML + '<tr><th>date</th><th>count</th></tr>';
for (var i = 0; i < date.length; i++) {
    element.innerHTML = element.innerHTML + '<tr><td>' + date[i] + '\t' + '</td><td>' + date[i] + '\t' + '</td></tr>';
}
        table {
            font-family: arial, sans-serif;
            border-collapse: collapse;
            width: 100%;
        }

        td, th {
            border: 1px solid #dddddd;
            text-align: center;
            padding: 8px;
        }

        tr:nth-child(even) {
            background-color: #dddddd;
        }
<table id='table_data'>

</table>

【讨论】:

    【解决方案2】:

    google drive excel的例子:这个关键字是'\t'

    对我来说,这很有效。但我必须将数据从浏览器(谷歌浏览器)粘贴到 记事本,然后将它们从记事本复制到 Excel。

    从 Chrome 直接复制到 excel 导致所有数据都粘贴在一个单元格中。

    【讨论】:

      【解决方案3】:

      对我来说,在尝试实施 @lingyfh 解决方案时,\t 没有效果,我需要 &lt;tbody&gt; 部分,它不在代码中,但如果您在中探索格式化的 html,您可以看到它 (AFAIS) sn-p

      所以就我而言,有效的是(这里是React

                                <table>
                                  {myarray.map(o => (
                                    <tbody>
                                      <tr>
                                        {o.secondArray[2].map(i => (
                                          <td>{i}</td>
                                        ))}
                                      </tr>
                                    </tbody>
                                  ))}
                                </table>
      

      我可以毫无问题地将粘贴复制到 Google 工作表,没有tbody 就不行,不管有\t

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-21
        • 2020-06-06
        • 2010-11-08
        • 2012-10-28
        • 1970-01-01
        相关资源
        最近更新 更多