Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在windows上使用php将excel导出为html_Php_Com_Export_Excel 2007 - Fatal编程技术网

在windows上使用php将excel导出为html

在windows上使用php将excel导出为html,php,com,export,excel-2007,Php,Com,Export,Excel 2007,我正在windows上使用xampp/wamp,并希望将excel工作簿转换为html文件 我不是马上问这个问题,我做了很多研究,最后终于找到了一个要点,并被困在这里 我使用php的COM库打开excel,然后阅读工作簿并尝试将其保存为html,无论我遇到什么问题 这是我的密码 $excel = new COM("Excel.Application",NULL,CP_UTF8) or die("Unable to instantiate Excel"); $excel->A

我正在windows上使用xampp/wamp,并希望将excel工作簿转换为html文件

我不是马上问这个问题,我做了很多研究,最后终于找到了一个要点,并被困在这里

我使用php的COM库打开excel,然后阅读工作簿并尝试将其保存为html,无论我遇到什么问题

这是我的密码

    $excel = new COM("Excel.Application",NULL,CP_UTF8) or die("Unable to instantiate Excel");
    $excel->Application->Visible=1;
    $excel->DisplayAlerts="False";
    $workBook=$excel->Workbooks->Open(realpath("./example-03e-02.xlsx"));
     $workBook->PublishObjects->Add(xlSourceSheet, "c:\\temp\\x.htm", "Sheet1", "", xlHtmlStatic, "test_27778", "");
 $workBook->Publish (True);
 $workBook->AutoRepublish(0);
    $excel->Workbooks->Close();
    $excel->Application->Quit();
    $excel = null;
    $workBook=null;
PUlishObjects方法一直告诉我没有定义xlSourceSheet,我试图将其作为字符串“xlSourceSheet”传递,但它总是说其中一个参数类型不匹配。在上述情况下,它表示参数6类型不匹配

如果我删除可选参数,如divid和title(最后2个),它会显示源范围上的类型不匹配,这显然是空的,因为我正在导出工作表

任何人都可以解释这一点,并告诉我我做错了什么


谢谢

无论如何,我通过进一步深入阅读excel开发者手册,设法解决了这个问题

我只需要用我在文档中找到的各自的数字替换xlSourceSheet和xlHtmlstatic。xlSourceSheet为1,xlHtmlStatic为0

如果有人在找这些代码,在这里

xlSourceAutoFilter 3自动筛选范围 xlSourcePivotTable 6数据透视表报表 xlSourcePrintArea 2选择用于打印的单元格范围 xlSourceQuery 7查询表(外部数据范围) xlSourceRange 4一系列单元格 xlSourceSheet 1完整的工作表 XLSource工作簿0是一个工作簿

xlHtmlCalc 1使用电子表格组件。Excel 2007中已弃用。 xlHtmlChart 3使用图表组件。Excel 2007中已弃用。 XLHTMList 2使用数据透视表组件。Excel 2007中已弃用。 xlHtmlStatic 0仅使用静态(非交互式)HTML进行查看

$object=$excel->ActiveWorkbook->PublishObjects->Add(1,"c:\\temp\\x.htm","Sheet1",0)->Publish(1);
谢谢你,克威斯克:)