是否使用colspan将HTML表格复制/粘贴到Excel?

是否使用colspan将HTML表格复制/粘贴到Excel?,html,css,excel,google-chrome,copy-paste,Html,Css,Excel,Google Chrome,Copy Paste,编辑:在OSX上,复制/粘贴在Firefox上可以完美工作,但在Chrome或Safari上则不行 是否可以使用colspan将表格单元格复制到反映结构的Excel 希望有一个应用程序能够以HTML格式呈现表格,以便用户能够很好地将其复制/粘贴到Excel。特别是,希望使用colspan=将某些表格单元格以正确对齐方式复制到Excel 问题是Excel似乎忽略了复制/粘贴中的colspan。因此,在下面的示例中,列标题大小显示得太靠左,在列上方显示为黄色,而在列上方显示为小 我并不特别关心Exc

编辑:在OSX上,复制/粘贴在Firefox上可以完美工作,但在Chrome或Safari上则不行

是否可以使用colspan将表格单元格复制到反映结构的Excel

希望有一个应用程序能够以HTML格式呈现表格,以便用户能够很好地将其复制/粘贴到Excel。特别是,希望使用colspan=将某些表格单元格以正确对齐方式复制到Excel

问题是Excel似乎忽略了复制/粘贴中的colspan。因此,在下面的示例中,列标题大小显示得太靠左,在列上方显示为黄色,而在列上方显示为小

我并不特别关心Excel单元格是合并的、集中在所选内容中的还是单独的单元格。他们的关键是让位置在语义上是正确的

HTML5和任何黑客一样好

代码笔:

在浏览器中呈现的HTML表格:

复制/粘贴到Excel后的表格:

剪贴板处理在不同浏览器中有所不同。Excel能否以正确的格式从剪贴板获取表取决于不同浏览器将哪些数据放入剪贴板。不幸的是,大多数实际操作系统在默认情况下没有更多的剪贴板查看器。因此,我们不能简单地看这些差异是什么

但是Excel可以处理HTML表格。因此,如果HTML表的HTML源代码在剪贴板中,那么Excel可以正确地粘贴它

使用VBA的示例:

Sub HTMLinClipboardTest()

 sHTML = "<table>" & _
         "<tr><td colspan=""2"" align=""center"">colspan2</td></tr>" & _
         "<tr><td rowspan=""2"" style=""vertical-align:middle;"">rowspan2</td><td>default</td></tr>" & _
         "<tr><td>default</td></tr>" & _
         "<tr><td>default</td><td>default</td></tr>" & _
         "</table>"

 Dim oDataObject As New DataObject 'needs Microsoft Forms 2.0 Object Library
 oDataObject.SetText sHTML
 oDataObject.PutInClipboard
 ActiveSheet.Range("a1").Select
 ActiveSheet.Paste

End Sub

是否可以选择复制并粘贴表格的HTML源代码?尝试以下操作:从代码笔复制表的HTML源代码。然后将它粘贴到一张Excel表格中,选中一个单元格。哦,太棒了。那很好用。因此,我也许可以将HTML复制到剪贴板,而不是突出显示DOM元素,让Chrome将HTML放到剪贴板上。我可能会请你把这条评论作为回答。