搜索
aardio官方社区 门户 查看主题

请教如何将excel文件保存成网页,直接用saveas为乱码

发布者: lvhoo | 发布时间: 2016-6-11 12:08| 查看数: 1484| 评论数: 3|帖子模式

用下面的代码,生成的文件打开是很乱的内容。
import win.ui;
import com;
import fsys.dlg;
/*DSG{{*/
var winform = win.form(text="aardio form";right=759;bottom=469)
winform.add(
button2={cls="button";text="excel另存为网页";left=497;top=38;right=654;bottom=84;z=2}
)
/*}}*/

winform.button2.oncommand = function(id,event){
        var fxls=fsys.dlg.open("excel2003文件|*.xls","选择要打开的excel文件","d:\")
        if(!#fxls){
        return ;
        }
        var excel = com.CreateObject("Excel.Application");
        excel.Visible=false;
        var book=excel.Workbooks.open(fxls);
        var sheet=book.sheets(1)
        sheet.saveas("d:\1.htm",FileFormat=xlHtml)  //用book.saveas出来的文件也是一样的内容。

        book.close(false)
        excel.application.quit()
        com.Release(excel)
        winform.button2.text="ok"       
}


查看标准库中excel操作,只有四种格式。
如果要导出htm或者mht格式,是否在标准库里增加支持htm或mht格式来可以实现?

                SaveAs = function(path,format){
                        if(!#path) error("请指定保存路径",2);
                       
                        if(format===null){
                                var ext =  ..string.match(path,"[^.]+$");
                                if( ext ){
                                        format = ( {
                                                xls = 0x2B/*_xlExcel9795*/;
                                                xlsx = 0x33/*_xlOpenXMLWorkbook*/;
                                                xlsm = 0x2E/*_xlXMLSpreadsheet*/;
                                                xlsb = 0x32/*_xlExcel12*/;
                                        } ) [..string.lower(ext)];
                                };
                        }
                        return owner.ActiveWorkbook.SaveAs( ..io.fullpath(path),format );
                };

最新评论

lvhoo 发表于 2016-6-11 12:12:33

问题应该出在 FileFormat=xlHtml这里。但是直接用 “xlHtml”替换又提示saveas方法错误。 是库不支持这个格式吧。 但是修改库文件,

问题应该出在 FileFormat=xlHtml这里。但是直接用 “xlHtml”替换又提示saveas方法错误。
是库不支持这个格式吧。
但是修改库文件,又该如何修改呢?
lvhoo 发表于 2016-6-15 21:07:01

终于开窍。 直接改成44就好了。

终于开窍。
直接改成44就好了。
taochunsong 发表于 2016-10-22 03:27:24
学习学习!!

手机版|未经许可严禁引用或转载本站文章|站长邮箱|aardio.com|aardio官方社区 ( 皖ICP备09012014号 )

GMT+8, 2017-11-25 13:24 , Processed in 0.125000 second(s), 18 queries , WinCache On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表