各位大虾急急急!!! 怎么用C#把Excel转化为Word ????

时间:2020-12-17 06:43:43
各位大虾;

怎么用C#代码把Excel转化为Word,

Excel中包含图形、表格和一大堆的字,

要求保持表格的格式和字体的颜色等都保持原样,

请指教,

最好能给段原码,

分不够的话,我再加。

谢谢!!!

急急急急急急急

52 个解决方案

#1


标记

#2


高手都去哪了?
自己顶一下

#3


简单:

把Xsl的数据读取出来,存为Xml,想用什么打开word,ppt打开都可能!因为office2003支持XML

#4


不会,帮定

#5


这样可以吗?
这台电脑没有环境,
我明天试试,
大虾们还有什么别的思路吗?
请指教!!!

#6


搞不好直接改后缀都行...没试过.

#7


改后缀不行啊
我都试了
Excel里的Saveas方法没有提供另存为Word的方法啊

#8


直接不行吧
API也没提供这种功能

折中一点:
读出Excel内容到DataSet等数据容器
然后按照你要的格式往Word文件里写

#9


Word里有插入Excel Sheet的功能。

可以试用C#把这个功能实现出来。

#10


Word里有插入Excel Sheet的功能。

可以试用C#把这个功能实现出来。
-------------------------------
可以嘛?拭目以待

#11


潜入Ole对象,呵呵...

#12


up

#13


高手
救命啊

#14


在C#+office 2003下实现通过OLE方式把11.xls加入到11.doc中
object xlsfile = "F:\\11.xls";
object docfile = "F:\\11.doc";
object miss = Type.Missing;Word.ApplicationClass app = new Word.ApplicationClass();
app.Visible = true;
Word.Document docApp = app.Documents.Add(ref miss,ref miss,ref miss,ref miss);
docApp.Shapes.AddOLEObject(ref miss,ref xlsfile,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss);
docApp.SaveAs(ref docfile,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss);

#15


上楼这个兄弟,
你的这个方法是把Excel当做整个图片嵌入到Word中,
在Word中如果我想修改Word里的一行数据,
那就无能为力了,
我的要求是Word中的格式和Excel中的格式要保持一致,
而且能方便的修改Word中的各行数据,
不能是单单一个图片,
Sorry,是我没有说明清楚,
不过谢谢你提供了这个方法。
我把Excel用Html保存后,
再用Word打开,
可里面保留着Excel的一部分网格,
结果也不是很满意,
请大虾们帮帮兄弟。

#16


这个是以OLE方式添加进去的,如果你想编辑,可以双击它,可以像在Excel中输入数据一样!

#17


world,怎么和excel保持一致?
excel中一个book对应多个sheet的

#18


是可以象Excel一样的编辑,
但在Word里的感觉就像是,
Word里嵌套一个Excel表,
在Word里双击编辑时,
Excel的行和例号都保留着,
当然我会保证一个Excel中的Book只对应一个Sheet,
还有是就当我的Excel很长的时候,
比如在Word里能显示3到5页时,
这时这方法好象就无能为力了,
因为是以一张图片嵌套到Word中,
在Word中他也只会以一页来显示,
而这时其实在word中应该以3到5页来显示,
要是能把这些东西去掉,
那就差不多了。

#19


没有用过,顶之

#20


^C   ^V

#21



路过的兄弟,
都帮顶顶,
顶者都有分。

#22


顶之,关注

#23


自己再顶
可怜啊

#24


该回复于2017-09-30 22:51:07被版主删除

#25


顶之

#26


标记一下~关注~

#27


Mark!

#28


标记

#29


Mark

#30


没用过,关注

#31


没用过world互操作,看样子解决方案只有XML了

#32


我把Excel保存成XML,
然后用Word去加载保存的XML,
可里面的图形等都不见了,
不知道哪个高人能否帮帮忙,
解决这个问题,
谁能解决的话,
分不够的话,
我可以再加,
会让解决者满意的。

#33


自己再顶,
路过的兄弟帮顶顶,
顶者有分.
谢了

#34


问题还没有解决啊,
请大虾们帮帮小弟,
顶者有分,
路过者请不要错过。

#35


打开Excel,执行菜单中得全选和复制命令,打开Word执行菜单中得粘贴命令.用Microsoft.Office.Core.CommandBarButton中得Execute()方法来执行菜单命令.

#36


此贴得顶

#37


将Excel内容拷贝到WORD中好了,程序中操作剪贴板

#38


up

#39


其实最早的时候我也考虑用剪贴板来操作,
可写的时候效果没有出来,
因为在一个Excel的Sheet页中包含着图片,表格,和一大堆的字,
我是这么操作的;
Clipboard.SetDataObject(worksheet1.cells, true);
System.Windows.Forms.IDataObject data = Clipboard.GetDataObject();
if(data.GetDataPresent(System.Windows.Forms.DataFormats.Text))
{
}
可在if条件的时候,总是为False,
我知道是我在DataFormats格式的时候用错了,
可我试了好几个,都没有达到预期的效果。
请大虾们帮小弟看看。
最好能给段伪代码,谢了。

#40


打错了是;
Clipboard.SetDataObject(worksheet1.Cells.Select(), true);

#41


路过,顶分!~~~~

#42


怎么没有牛人出来啊

#43


牛人都去哪了?

#44


不会

#45


无语...

#46


来看看有没有办法,学习学习!

#47


怎么一个星爷都没看到啊 
帮顶

#48


不会,帮定

#49


不会吧,
这么多的人,
怎么这个问题没有一个会的,
会的兄弟帮搞定,
不会的兄弟帮顶顶,
人人有分,
不够再加.

#50


不懂,帮LZ顶一下!

#1


标记

#2


高手都去哪了?
自己顶一下

#3


简单:

把Xsl的数据读取出来,存为Xml,想用什么打开word,ppt打开都可能!因为office2003支持XML

#4


不会,帮定

#5


这样可以吗?
这台电脑没有环境,
我明天试试,
大虾们还有什么别的思路吗?
请指教!!!

#6


搞不好直接改后缀都行...没试过.

#7


改后缀不行啊
我都试了
Excel里的Saveas方法没有提供另存为Word的方法啊

#8


直接不行吧
API也没提供这种功能

折中一点:
读出Excel内容到DataSet等数据容器
然后按照你要的格式往Word文件里写

#9


Word里有插入Excel Sheet的功能。

可以试用C#把这个功能实现出来。

#10


Word里有插入Excel Sheet的功能。

可以试用C#把这个功能实现出来。
-------------------------------
可以嘛?拭目以待

#11


潜入Ole对象,呵呵...

#12


up

#13


高手
救命啊

#14


在C#+office 2003下实现通过OLE方式把11.xls加入到11.doc中
object xlsfile = "F:\\11.xls";
object docfile = "F:\\11.doc";
object miss = Type.Missing;Word.ApplicationClass app = new Word.ApplicationClass();
app.Visible = true;
Word.Document docApp = app.Documents.Add(ref miss,ref miss,ref miss,ref miss);
docApp.Shapes.AddOLEObject(ref miss,ref xlsfile,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss);
docApp.SaveAs(ref docfile,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss,ref miss);

#15


上楼这个兄弟,
你的这个方法是把Excel当做整个图片嵌入到Word中,
在Word中如果我想修改Word里的一行数据,
那就无能为力了,
我的要求是Word中的格式和Excel中的格式要保持一致,
而且能方便的修改Word中的各行数据,
不能是单单一个图片,
Sorry,是我没有说明清楚,
不过谢谢你提供了这个方法。
我把Excel用Html保存后,
再用Word打开,
可里面保留着Excel的一部分网格,
结果也不是很满意,
请大虾们帮帮兄弟。

#16


这个是以OLE方式添加进去的,如果你想编辑,可以双击它,可以像在Excel中输入数据一样!

#17


world,怎么和excel保持一致?
excel中一个book对应多个sheet的

#18


是可以象Excel一样的编辑,
但在Word里的感觉就像是,
Word里嵌套一个Excel表,
在Word里双击编辑时,
Excel的行和例号都保留着,
当然我会保证一个Excel中的Book只对应一个Sheet,
还有是就当我的Excel很长的时候,
比如在Word里能显示3到5页时,
这时这方法好象就无能为力了,
因为是以一张图片嵌套到Word中,
在Word中他也只会以一页来显示,
而这时其实在word中应该以3到5页来显示,
要是能把这些东西去掉,
那就差不多了。

#19


没有用过,顶之

#20


^C   ^V

#21



路过的兄弟,
都帮顶顶,
顶者都有分。

#22


顶之,关注

#23


自己再顶
可怜啊

#24


该回复于2017-09-30 22:51:07被版主删除

#25


顶之

#26


标记一下~关注~

#27


Mark!

#28


标记

#29


Mark

#30


没用过,关注

#31


没用过world互操作,看样子解决方案只有XML了

#32


我把Excel保存成XML,
然后用Word去加载保存的XML,
可里面的图形等都不见了,
不知道哪个高人能否帮帮忙,
解决这个问题,
谁能解决的话,
分不够的话,
我可以再加,
会让解决者满意的。

#33


自己再顶,
路过的兄弟帮顶顶,
顶者有分.
谢了

#34


问题还没有解决啊,
请大虾们帮帮小弟,
顶者有分,
路过者请不要错过。

#35


打开Excel,执行菜单中得全选和复制命令,打开Word执行菜单中得粘贴命令.用Microsoft.Office.Core.CommandBarButton中得Execute()方法来执行菜单命令.

#36


此贴得顶

#37


将Excel内容拷贝到WORD中好了,程序中操作剪贴板

#38


up

#39


其实最早的时候我也考虑用剪贴板来操作,
可写的时候效果没有出来,
因为在一个Excel的Sheet页中包含着图片,表格,和一大堆的字,
我是这么操作的;
Clipboard.SetDataObject(worksheet1.cells, true);
System.Windows.Forms.IDataObject data = Clipboard.GetDataObject();
if(data.GetDataPresent(System.Windows.Forms.DataFormats.Text))
{
}
可在if条件的时候,总是为False,
我知道是我在DataFormats格式的时候用错了,
可我试了好几个,都没有达到预期的效果。
请大虾们帮小弟看看。
最好能给段伪代码,谢了。

#40


打错了是;
Clipboard.SetDataObject(worksheet1.Cells.Select(), true);

#41


路过,顶分!~~~~

#42


怎么没有牛人出来啊

#43


牛人都去哪了?

#44


不会

#45


无语...

#46


来看看有没有办法,学习学习!

#47


怎么一个星爷都没看到啊 
帮顶

#48


不会,帮定

#49


不会吧,
这么多的人,
怎么这个问题没有一个会的,
会的兄弟帮搞定,
不会的兄弟帮顶顶,
人人有分,
不够再加.

#50


不懂,帮LZ顶一下!