在Winform 的开发中,经常要做Excel的报表,有些报表很复杂,也有简单的。
复杂的就不讲了,简单的比如说:要次一个DataGridView中的数据原板原样的放到Excel中。
通常从DataGridView中取数据都是逐行读取。如果这样做,遇到数据量比较大的时候,速度会变得很慢。
不符合需求。
在.net中DataGridView已经封装好复制的功能。可以直接调用。
贴一段核心代码:使用pubs数据库中的jobs资料表
在使用粘贴板的时候有可能乱码(因为DataGridView和Excel的格式是不一样的。)
解决方法 在粘贴的时候使用Excel中的选择性粘贴功能。
'下面這一行,相當于在Excel中點擊右鍵->選擇性粘貼->文本
objexcel.ActiveSheet.PasteSpecial(Format:="文本", Link:=False, DisplayAsIcon:=False)
运行效果图:
源代码: