我想用简单的HTML显示IE中嵌入的EXCEL表格。我在stackoverflow上经历过其他问题,但找不到任何有用的问题。
这是我的html文件
<html>
<body>
<object width = 900 height = 500 id = "excel" data="Issues Identified.xlsx" classid = "clsid:0002E55a-0000-0000-C000-000000000046" VIEWASTEXT >
<param name="DisplayTitleBar" value=true />
<param name="DataType" value="CSVURL"/>
<param name="AutoFit" value="0"/>
<param name="DisplayColHeaders" value="1"/>
<param name="DisplayGridlines" value="1"/>
<param name="DisplayHorizontalScrollBar" value="1"/>
<param name="DisplayRowHeaders" value="1"/>
<param name="DisplayTitleBar" value="1"/>
<param name="DisplayToolbar" value="1"/>
<param name="DisplayVerticalScrollBar" value="1"/>
<param name="EnableAutoCalculate" value="0"/>
<param name="EnableEvents" value="0"/>
<param name="MoveAfterReturn" value="1"/>
<param name="MoveAfterReturnDirection" value="0"/>
<param name="RightToLeft" value="0"/>
</object>
</body>
</html>
不幸的是,我无法控制生成的excel文件。如果我可以控制excel文件,我可以将它们保存为网页并包含在浏览器中。现在我怀疑是否通过上述代码我可以直接在网络浏览器中嵌入excel表格。网上有很多链接,但发现没有找到一个直接将excel表加载到浏览器中的链接。那里的那些使用javascript生成图表而不是显示已经存在的excel表。
当我尝试通过上面的代码加载excel表时。我得到以下屏幕
当我使用IFRAME时,excel表格不会显示为嵌入文件,而是提示下载或打开。我希望它能够在Internet Explorer中打开。
任何帮助都非常感激。
由于
答案 0 :(得分:4)
根据您是否希望它自动更新,您可以将Excel电子表格另存为PDF,然后将PDF作为对象嵌入 -
您似乎没有此浏览器的PDF插件,但您可以 click here to download the PDF file.
这是我找到的最佳上传方式。
答案 1 :(得分:3)
您可以将其上传到Google文档中,并按照此处详细说明嵌入Google电子表格:http://support.google.com/docs/bin/answer.py?hl=en&answer=55244
答案 2 :(得分:2)
将您的文件上传到Skydrive,然后右键单击并选择“嵌入”。他们将提供iframe片段,您可以将其粘贴到您的HTML中。这完美无缺。
来源:Office.com
答案 3 :(得分:1)
和您一样,我无法让MS Office Web Components工作。我不会考虑谷歌文档,因为谷歌似乎认为他们拥有通过他们手中的任何东西。我已经尝试了MS Publish Objects,但生成的html / css的质量确实非常糟糕。
将Excel工作表转换为可在智能手机上正确显示的html的秘诀在于创建干净,精简的html / css。
HTML的结构是:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
HEAD
</head>
<body>
BODY
</body>
</html>
有一些有用的html元素可以取代“HEAD”,但我不清楚如何从Excel工作表中生成它们。它们需要单独添加。
工作表或范围的明显输出是一个html表,因此以下假定BODY将被html表替换。
html表的结构是:
<table TABLE-ATTRIBUTES>
<tr TABLE-ROW-ATTRIBUTES>
<td TABLE-CELL-ATTRIBUTES>CELL-VALUE</td>
More <td>...</td> elements as necessary
</tr>
More <tr>...</tr> as necessary
</table>
包括尽可能少的表 - 属性,表 - 行 - 属性和表 - 细胞 - 属性。不要以像素为单位设置列宽。使用css属性而不是html属性。
值得考虑的表属性是style = "border-collapse: collapse;"
。默认值为separate
,每个单元格周围都有间隙。使用collapse
时,单元格会像Excel一样触摸。
值得考虑的三个表属性是style="background-color:aliceblue;"
,style="color:#0000FF;"
和style="text-align:right;"
。使用第一个,您可以将背景颜色指定为50个左右的命名html颜色中的任何一个。使用秒,您可以将字体颜色指定为256 * 256 * 256颜色中的任何一种。使用第三个,您可以右对齐数值。
以上仅涵盖了可以从Excel转换为html / css的格式信息的一小部分。我正在开发一个可以尽可能多地转换Excel格式的加载项,但我希望上面的内容可以帮助任何有简单要求的人。
答案 4 :(得分:1)
您可以使用iPushPull将实时数据从Excel会话直接推送到网络,您可以在网络中将其显示在IFRAME中(或使用WordPress插件,如果适用)。只要工作表上的数据更新,框架中的数据就会更新。
iPush(...) in-cell function将数据从Excel推送到网络。
This support page介绍了如何在您的网站中嵌入Excel数据。
免责声明 - 我为iPushPull工作。
答案 5 :(得分:0)
如果您要创建链接<a href='file.htm'>link name</a>
或放置iframe标记,它会在网络上显示Excel数据,但您无法对其进行更改。
每次在Excel工作表中进行更改时,都必须使用相同的名称再次保存,以便替换文件,并显示结果。 <a>
标记文件扩展名应为.htm
答案 6 :(得分:0)
请注意,Office Web Components已失效,请参阅does-office-xp-web-components-compatable-with-windows-7。出于安全原因,OWC已从XP开始停止使用。
从那以后,直到最近,微软还推出了Excel Web App作为替代方案(一个糟糕的替代恕我直言)
作为旁注:Microsoft也反过来推荐,即将webbrowser控件嵌入到Excel工作表中,请参阅adding-web-browser-control-to-excel-2013。 作为替代方案,Microsoft提供Office Apps(关于连接Excel和IE的非常有限的替代方案)
答案 7 :(得分:0)
来自here您可以轻松地将您的Excel工作表数据转换为html视图
答案 8 :(得分:0)
Office 365和OneDrive提供嵌入功能。然后,您可以通过IFrame包含。
我发现将iframe高度和宽度设置为100%效果最佳。这样在ipad或任何设备上它都适合屏幕。
<body style="margin:0px;padding:0px;overflow:hidden">
<iframe src="embed url" frameborder="0" style="overflow:hidden;overflow-x:hidden;overflow-y:hidden;height:100%;width:100%;position:absolute;top:0px;left:0px;right:0px;bottom:0px" height="100%" width="100%"></iframe>
</body>
答案 9 :(得分:0)
也许您可以尝试使用适当的Content-Type标头发送文件,并使用以下标题发送文件:
Content-Disposition: inline; filename="xxx.xxx"
以下是对这些标题的讨论:How to force files to open in browser instead of download (pdf)?
或者只是在谷歌搜索内容处理。
答案 10 :(得分:-3)
试试这个它会起作用......
<iframe src="Tmp.XLS" width="100%" height="500"></iframe>
但您无法保存已完成的更改...它仅用于显示目的..