标题: [问题求助] 请问如何在没有安装Excel的情况下用VBS生成xls文件 [打印本页]
作者: vmzlv 时间: 2014-5-9 15:13 标题: 请问如何在没有安装Excel的情况下用VBS生成xls文件
RT,请教大神。
或者有什么绿色一点的方法吗?反正就是不安装Excel.
作者: terse 时间: 2014-5-9 16:26
直接记事本也可以吧
作者: CrLf 时间: 2014-5-9 17:25
普通的表格可以直接生成 html 格式的 table,后缀名改为 xls 即可,但估计不能支持 公式 和 宏
作者: vmzlv 时间: 2014-5-9 17:40
回复,是啊,文本文件直接改成xls的后缀名excel也认的,就是不是很标准的Excel文件 3# CrLf
作者: CrLf 时间: 2014-5-9 17:50
回复 4# vmzlv
最简单的是生成 csv,后缀一改就行,但更好的选择是生成 html,可创建包含图片、链接、样式等复杂属性的表格,原生 xls 中所包含的信息,大部分都能用 html 实现
你可以试着在 excel 里放一点样本,然后另存为网页,再对得到的 html 进行化简,就知道如何生成能让 excel 理解的 html 了,比如用标准的 table 包含表格数据,用 href、color 等属性设置超链接和颜色等
作者: CrLf 时间: 2014-5-9 18:52
本帖最后由 CrLf 于 2014-5-9 20:35 编辑
举个例子,把下面的内容保存为 test.xls,即可看到效果:- <head>
- <style>
- table
- {
- border:1pt solid;
- }
- td
- {
- border:.5pt solid;
- }
- ;样式示例
- </sytle>
- </head>
-
- <table>
- <th style="background-color:yellow;">
- <td style="background-color:yellow;">序号</td>
- <td colspan=2 style="background-color:yellow;">示例</td>
- </th>
- <tr>
- <td rowspan=2>跨行示例</td>
- <td>1</td>
- <td colspan=2>跨列示例</td>
- </tr>
- <tr>
- <td>2</td>
- <td href="http://www.baidu.com" style="font-weight:bold"><b><s>标签示例 粗体与删除线</s></b></td><td style="color:blue" href="http://bbs.bathome.net">属性示例 颜色与链接</td>
- </tr>
- <img src="http://www.baidu.com/img/bdlogo.gif" />
- </table>
复制代码
测试中发现几个不如意的地方:- 导出的 html 是支持 class 引用的,但自己组装的不知道为啥未生效(也许是我忽略了什么东西吧...)
- 有些属性不被继承(也许是我忽略了什么东西吧...)
- 某些属性不能只应用于局部文字内容(原生 xls 也是如此)
- 设置的事件不生效(情理之中)
复制代码
有了思路后,如何用脚本生成 html 就只是体力活罢了
作者: vmzlv 时间: 2014-5-9 19:39
真是十分滴感谢,还帮忙测试。
之前我只试过在文本文件里面排好数据之后Excel能打开,还不知道HTML的排版Excel也认,学习了。
一开始我这边就想重复用脚本生成xls文件然后写个标题就可以了,其他复杂的操作用不到,所以装Excel有点那啥、
用Java到倒是有excel的开源库,但是vbs这边还不想轻易放弃、
6# CrLf
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |