我正在通过从数据集中读取并写入excel来将数据集数据写入excel 作为DirectCast(ws.Cells(行,列),范围).Value2 = item
这是写作,但我的每个单元格的边框格式很少,我正在申请 DirectCast(ws.Cells(row,col),Range).Borders(XlBordersIndex.xlEdgeLeft).Weight = 2
这对100条记录的速度更快,如果我增加记录则需要很多时间。
问题:在实时数据中可能有2万个记录。然后如何增加
这段时间表现得很快。
谢谢 Ramesh.T。
答案 0 :(得分:1)
首先,您可能希望使用ADODB记录集填写数据。这是在我找到的Excel工作表上填写数据的最快方法。
实施例:
ws.Range("A2").CopyFromRecordset(rs)
将您需要的所有列添加到记录集中,并将其全部放入。
如果您从单元格A2开始,那么您可以在之后填充标题。
在将数据输入后,您可以在整个单元格范围内一次性完成格式化:
实施例:
ws.UsedRange.Cells.Borders(xlBordersIndex.xlEdgeLeft).Weight = 2
答案 1 :(得分:0)
完成所有行的写入后,尝试应用边框效果。
我的意思是对一系列细胞应用边界效应,而不是逐个细胞。
答案 2 :(得分:0)
如果您是.NET开发人员,另一种方法可能是利用办公室使用的开放式xml扩展(假设您使用的是支持-2007或更高版本的Office版本,我认为)
以下是该方法的简单视图。
基本上文档文件是一个zip文件,你可以打开和操作,zip中的许多文件都是XML - 事实上大多数时候你甚至不需要安装办公室来生成文件!您基本上构建xml文件并将其放在zip文件中。
Beth Massi有几篇关于此的文章(http://blogs.msdn.com/b/bethmassi,甚至在.NET Rocks(http://www.dotnetrocks.com)上做了几个屏幕演示,展示了这项技术
您可能需要查看它。