服务器上没有安装EXCEL, 如何能调生成电子表格呢?

hywyjw 2010-11-01 04:45:18
我把我的系统布署到了一台没安装有OFFICE EXCEL 的服务器中, 原来的导出生成电子表格无法使用.

是需要设置一个 微软EXCEL DCOM 接口的.

现在请问一下, 如果服务器上没有安装EXCEL, 有什么方法客户端通过IE访问可以生成 电子表格并保存下来?

using Excel;

Range range1;
range1 = curSheet.get_Range("a4", "s" + (j + 3).ToString());
range1.Borders.LineStyle = 1;
// range1 = curSheet.get_Range("f" + (j + 3).ToString(), "f" + (j + 3).ToString());
/*
//-------------------定义报表格式--合计--------------------------------

range1 = curSheet.get_Range("a4", "l" + (j + 3).ToString());
range1.Borders.LineStyle = 1;
range1 = curSheet.get_Range("f" + (j + 3).ToString(), "f" + (j + 3).ToString());



...全文
493 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
xjbx 2010-11-04
  • 打赏
  • 举报
回复
xml的方案不错
mqmmx 2010-11-04
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 hywyjw 的回复:]
引用 6 楼 mqmmx 的回复:
看看我写的那个 http://download.csdn.net/user/mqmmx


真是不好意思, 我下载下来了, 但是发现\Biff8_C#_Excel 在VS2005中打开后, 都是 .CS 源代码, 没有FROM 窗体 我不知道如何使用, 调用这些.CS源代码

请给我个使用说明吧. 真是太麻烦你了
[/Quote]

你打开的解决方案中有没有一个叫test的项目,直接运行它就行生成excel了。用法就在test项目啊
孟子E章 2010-11-04
  • 打赏
  • 举报
回复
另外,文件需要存成utf-8格式的
孟子E章 2010-11-04
  • 打赏
  • 举报
回复
你的文件问题在于:江园营业厅不可能是数字的,设置数字类型是错误的
<Cell ss:StyleID='border'><Data ss:Type='String'>中国移动</Data></Cell>
<Cell ss:StyleID='border'><Data ss:Type='Number'>江园营业厅</Data></Cell>
<Cell ss:StyleID='border'><Data ss:Type='Number'>键盘</Data></Cell>


正确的如下
<?xml version='1.0'?><?mso-application progid='Excel.Sheet'?>
<Workbook xmlns='urn:schemas-microsoft-com:office:spreadsheet'
xmlns:o='urn:schemas-microsoft-com:office:office' xmlns:x='urn:schemas-microsoft-com:office:excel'
xmlns:ss='urn:schemas-microsoft-com:office:spreadsheet' xmlns:html='http://www.w3.org/TR/REC-html40'>
<DocumentProperties xmlns='urn:schemas-microsoft-com:office:office'>
</DocumentProperties>
<Styles><Style ss:ID='Default' ss:Name='Normal'><Alignment ss:Vertical='Center'/>
<Borders/><Font ss:FontName='宋体' x:CharSet='134' ss:Size='12'/><Interior/><NumberFormat/><Protection/></Style>
<Style ss:ID='Header'><Borders><Border ss:Position='Bottom' ss:LineStyle='Continuous' ss:Weight='1'/>
<Border ss:Position='Left' ss:LineStyle='Continuous' ss:Weight='1'/>
<Border ss:Position='Right' ss:LineStyle='Continuous' ss:Weight='1'/>
<Border ss:Position='Top' ss:LineStyle='Continuous' ss:Weight='1'/></Borders>
<Font ss:FontName='宋体' x:CharSet='134' ss:Size='18' ss:Color='#FF0000' ss:Bold='1'/></Style>
<Style ss:ID='border'><NumberFormat ss:Format='@'/><Borders>
<Border ss:Position='Bottom' ss:LineStyle='Continuous' ss:Weight='1'/>
<Border ss:Position='Left' ss:LineStyle='Continuous' ss:Weight='1'/>
<Border ss:Position='Right' ss:LineStyle='Continuous' ss:Weight='1'/>
<Border ss:Position='Top' ss:LineStyle='Continuous' ss:Weight='1'/></Borders></Style>
</Styles>
<Worksheet ss:Name='Sheet1'>
<Table x:FullColumns='1' x:FullRows='1'>
<Row ss:AutoFitHeight='1'>
<Cell ss:StyleID='Header'><Data ss:Type='String'>序号</Data></Cell>
<Cell ss:StyleID='Header'><Data ss:Type='String'></Data></Cell>
<Cell ss:StyleID='Header'><Data ss:Type='String'></Data></Cell>
<Cell ss:StyleID='Header'><Data ss:Type='String'></Data></Cell>
<Cell ss:StyleID='Header'><Data ss:Type='String'></Data></Cell>
</Row>
<Row>
<Cell ss:StyleID='border'><Data ss:Type='String'>1</Data></Cell>
<Cell ss:StyleID='border'><Data ss:Type='String'>中国移动</Data></Cell>
<Cell ss:StyleID='border'><Data ss:Type='String'>江园营业厅</Data></Cell>
<Cell ss:StyleID='border'><Data ss:Type='String'>键盘</Data></Cell>
<Cell ss:StyleID='border'><Data ss:Type='String'>1</Data></Cell>
</Row>
</Table>
</Worksheet>
</Workbook>
速 战 2010-11-04
  • 打赏
  • 举报
回复
xml 格式的 显示成电子表格EXCEL的样子,其本质是 xml 文件
crackdung 2010-11-04
  • 打赏
  • 举报
回复
用 Smart XLS 2.1.92 for .NET 吧




my blog
http://ufo-crackerx.blog.163.com/
孟子E章 2010-11-04
  • 打赏
  • 举报
回复
关于格式,你可以在Excel里输入几行,设置下简单的样式,然后另存为xml格式,就可以看到具体的格式样子了
fxf90 2010-11-04
  • 打赏
  • 举报
回复
在有装有EXCEL的机子上拷贝一个EXCEL.dll
noway8881 2010-11-04
  • 打赏
  • 举报
回复
使用myxls开源项目。
hywyjw 2010-11-04
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 hywyjw 的回复:]
孟老大 生成的文件打开的时候提示: "由于错误,此文件无法打七. 错误弄于 .... "

我把生成的文件给大伙看看, 看看是哪这地方出了问题. 是哪个地方我没操作好?


<?xml version='1.0'?><?mso-application progid='Excel.Sheet'?>\r\n<Workbook xmlns='urn:schemas-microsoft-com:……
[/Quote]

我的开发环境是 vs2005.net c# windows 2003 server 操作系统 调用的是sqlserver 2000 数据库 机器装的是office2003 word excel ,access
suhu42142 2010-11-04
  • 打赏
  • 举报
回复
看一下,,,
mashimaro_ra 2010-11-04
  • 打赏
  • 举报
回复
可以使用 myxls
comon1981 2010-11-04
  • 打赏
  • 举报
回复
学习下,好像我马上要用到类似的功能了
hywyjw 2010-11-04
  • 打赏
  • 举报
回复
孟老大 生成的文件打开的时候提示: "由于错误,此文件无法打七. 错误弄于 .... "

我把生成的文件给大伙看看, 看看是哪这地方出了问题. 是哪个地方我没操作好?


<?xml version='1.0'?><?mso-application progid='Excel.Sheet'?>\r\n<Workbook xmlns='urn:schemas-microsoft-com:office:spreadsheet'
xmlns:o='urn:schemas-microsoft-com:office:office' xmlns:x='urn:schemas-microsoft-com:office:excel'
xmlns:ss='urn:schemas-microsoft-com:office:spreadsheet' xmlns:html='http://www.w3.org/TR/REC-html40'>\r\n<DocumentProperties xmlns='urn:schemas-microsoft-com:office:office'>\r\n<<Author>孟宪会</Author><LastAuthor>孟子E章</LastAuthor>
<Created>2010-09-08T14:07:11Z</Created><Company>mxh</Company><Version>1990</Version>
</DocumentProperties>\r\n<Styles><Style ss:ID='Default' ss:Name='Normal'><Alignment ss:Vertical='Center'/>
<Borders/><Font ss:FontName='宋体' x:CharSet='134' ss:Size='12'/><Interior/><NumberFormat/><Protection/></Style><Style ss:ID='Header'><Borders><Border ss:Position='Bottom' ss:LineStyle='Continuous' ss:Weight='1'/>
<Border ss:Position='Left' ss:LineStyle='Continuous' ss:Weight='1'/>
<Border ss:Position='Right' ss:LineStyle='Continuous' ss:Weight='1'/>
<Border ss:Position='Top' ss:LineStyle='Continuous' ss:Weight='1'/></Borders>
<Font ss:FontName='宋体' x:CharSet='134' ss:Size='18' ss:Color='#FF0000' ss:Bold='1'/></Style><Style ss:ID='border'><NumberFormat ss:Format='@'/><Borders>
<Border ss:Position='Bottom' ss:LineStyle='Continuous' ss:Weight='1'/>
<Border ss:Position='Left' ss:LineStyle='Continuous' ss:Weight='1'/>
<Border ss:Position='Right' ss:LineStyle='Continuous' ss:Weight='1'/>
<Border ss:Position='Top' ss:LineStyle='Continuous' ss:Weight='1'/></Borders></Style></Styles>
<Worksheet ss:Name='Sheet1'>
<Table x:FullColumns='1' x:FullRows='1'>
<Row ss:AutoFitHeight='1'><Cell ss:StyleID='Header'><Data ss:Type='String'>序号</Data></Cell><Cell ss:StyleID='Header'><Data ss:Type='String'></Data></Cell><Cell ss:StyleID='Header'><Data ss:Type='String'></Data></Cell><Cell ss:StyleID='Header'><Data ss:Type='String'></Data></Cell><Cell ss:StyleID='Header'><Data ss:Type='String'></Data></Cell>
</Row>
<Row><Cell ss:StyleID='border'><Data ss:Type='String'>1</Data></Cell><Cell ss:StyleID='border'><Data ss:Type='String'>中国移动</Data></Cell><Cell ss:StyleID='border'><Data ss:Type='Number'>江园营业厅</Data></Cell><Cell ss:StyleID='border'><Data ss:Type='Number'>键盘</Data></Cell><Cell ss:StyleID='border'><Data ss:Type='Number'>1</Data></Cell>
</Row>
<Row><Cell ss:StyleID='border'><Data ss:Type='String'>2</Data></Cell><Cell ss:StyleID='border'><Data ss:Type='String'>中国移动</Data></Cell><Cell ss:StyleID='border'><Data ss:Type='Number'>江园营业厅</Data></Cell><Cell ss:StyleID='border'><Data ss:Type='Number'>排队机</Data></Cell><Cell ss:StyleID='border'><Data ss:Type='Number'>1</Data></Cell>
</Row>
<Row><Cell ss:StyleID='border'><Data ss:Type='String'>3</Data></Cell><Cell ss:StyleID='border'><Data ss:Type='String'>中国移动</Data></Cell><Cell ss:StyleID='border'><Data ss:Type='Number'>江园营业厅</Data></Cell><Cell ss:StyleID='border'><Data ss:Type='Number'>鼠标</Data></Cell><Cell ss:StyleID='border'><Data ss:Type='Number'>1</Data></Cell>
</Row>
<Row><Cell ss:StyleID='border'><Data ss:Type='String'>4</Data></Cell><Cell ss:StyleID='border'><Data ss:Type='String'>中国移动</Data></Cell><Cell ss:StyleID='border'><Data ss:Type='Number'>江园营业厅</Data></Cell><Cell ss:StyleID='border'><Data ss:Type='Number'>显示器</Data></Cell><Cell ss:StyleID='border'><Data ss:Type='Number'>1</Data></Cell>
</Row>
</Table>
</Worksheet>
</Workbook>

Teng_s2000 2010-11-03
  • 打赏
  • 举报
回复
孟老大都出来了啊旁观一下
孟子E章 2010-11-03
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 hywyjw 的回复:]
引用 3 楼 net_lover 的回复:
参见
http://dotnet.aspx.cc/file/Export-Gridview-To-Excel-With-Multi-Sheet.aspx


我原原本本的将这个页面的代码COPY过来试了一下, 不行呀. 生成了一个EXCL表, 但是打开的时候说格式不对, 无法打开..


谁有代码, 粘上来吧
[/Quote]

生成的文件名采用xx.xml,就在Excel2003,2007,2010里面兼容了,不会提示的
hywyjw 2010-11-03
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 mqmmx 的回复:]
看看我写的那个 http://download.csdn.net/user/mqmmx
[/Quote]

真是不好意思, 我下载下来了, 但是发现\Biff8_C#_Excel 在VS2005中打开后, 都是 .CS 源代码, 没有FROM 窗体 我不知道如何使用, 调用这些.CS源代码

请给我个使用说明吧. 真是太麻烦你了
shenhui_163 2010-11-02
  • 打赏
  • 举报
回复
每天回帖可得是个可用分
mqmmx 2010-11-02
  • 打赏
  • 举报
回复
看看我写的那个 http://download.csdn.net/user/mqmmx
hywyjw 2010-11-02
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 net_lover 的回复:]
参见
http://dotnet.aspx.cc/file/Export-Gridview-To-Excel-With-Multi-Sheet.aspx
[/Quote]

我原原本本的将这个页面的代码COPY过来试了一下, 不行呀. 生成了一个EXCL表, 但是打开的时候说格式不对, 无法打开..


谁有代码, 粘上来吧
加载更多回复(2)

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧