我想用WPS导出Excel表格,但是WPS2016安装目录下没有etapp.dll,这是为啥?从网上下载dll也不行,都是x86的
只有wps企业版可以二次开发,你网站上下载的个人版不行。企业版不是免费的。
建议用NPOI
https://github.com/tonyqus/npoi
使用C#写WPS的excel
最近因为工作需要,用C#WPS重写excel表的某写数据。因为完全没接触过这方面的内容,所以写起来比较费劲非常简单的一个功能,折腾了多半天。
现在将小白操作记录下来。以备以后查看。
首先将wps的相关COM组件添加至引用。project -> add reference -> com-> Kingsoft ET 2.0 Object Library.
代码中添加using KSO; using ET;
打开xls文件的相关代码:
ET.Application etApp;
ET.workbook etbook;
ET.Worksheet etsheet ;
ET.Range etrange;
//获取工作表表格
etApp = new ET.Application();
etbook = (ET.workbook)etApp.Workbooks.Open(@"c:\file.xls");
//获取数据区域
etsheet = (ET.Worksheet)etbook.Worksheets.get_Item(1);
//获取数据区域
etrange = (ET.Range)etsheet.UsedRange;
string strData = ((ET.Range)etrange.get_Item(i, j)).Text;
((ET.Range)etrange.get_Item(i, j)).Value = strData;
etbook.Close();
etApp.Quit();
System.Runtime.InteropServices.Marshal.ReleaseComObject(etrange);
System.Runtime.InteropServices.Marshal.ReleaseComObject(etsheet);
System.Runtime.InteropServices.Marshal.ReleaseComObject(etbook);
System.Runtime.InteropServices.Marshal.ReleaseComObject(etApp);
建议使用管家重新安装一下就可以了
建议使用管家重新安装一下就可以
首先将wps的相关COM组件添加至引用。project -> add reference -> com-> Kingsoft ET 2.0 Object Library.
代码中添加using KSO; using ET;
打开xls文件的相关代码:
ET.Application etApp;
ET.workbook etbook;
ET.Worksheet etsheet ;
ET.Range etrange;
//获取工作表表格
etApp = new ET.Application();
etbook = (ET.workbook)etApp.Workbooks.Open(@"c:\file.xls");
//获取数据区域
etsheet = (ET.Worksheet)etbook.Worksheets.get_Item(1);
//获取数据区域
etrange = (ET.Range)etsheet.UsedRange;
string strData = ((ET.Range)etrange.get_Item(i, j)).Text;
((ET.Range)etrange.get_Item(i, j)).Value = strData;
etbook.Close();
etApp.Quit();
System.Runtime.InteropServices.Marshal.ReleaseComObject(etrange);
System.Runtime.InteropServices.Marshal.ReleaseComObject(etsheet);
System.Runtime.InteropServices.Marshal.ReleaseComObject(etbook);
System.Runtime.InteropServices.Marshal.ReleaseComObject(etApp);
需要一个授权的WPS软件才行
谢谢大佬们的回答,我已经发现了,只有专业版才行,使用其appcore.dll就行了