从VB中的Datagride中向excel导入数据
2024-07-21 02:25:21
供稿:网友
本文来源于网页设计爱好者web开发社区http://www.html.org.cn收集整理,欢迎访问。
程序需要,我在网上找了很久才找到,刚刚把程序写好,并加写了注释,希望能帮助大家
再写程序前先引用
microsoft excel 11.0 object library
我看到的文章是10.0的,我这是office2003是11.0,只要安了excel就有这个引用~
private sub cmdsave_click()
msgbox "文件保存为: d:/电网配电线路管理信息系统/信息查询结果/事故信息查询结果.xls"
dim i as integer
dim j as integer
dim ex as object
dim exwbook as object
dim exsheet as object
set ex = createobject("excel.application")
set exwbook = nothing
set exsheet = nothing
set exwbook = ex.workbooks().add
set exsheet = exwbook.worksheets("sheet1")
在excel里表格的表头,这是根据我的需要添加的标头
ex.range("c3").value = "日期"
ex.range("d3").value = "时间"
ex.range("e3").value = "站点"
ex.range("f3").value = "汇报人"
ex.range("g3").value = "线路双编号"
ex.range("h3").value = "保护动作类型"
ex.range("i3").value = "事故原因"
ex.range("j3").value = "处理负责人"
ex.range("k3").value = "处理方法"
ex.range("l3").value = "处理结果"
ex.range("m3").value = "结束时间"
ex.range("n3").value = "备注"
i为记录个数使用循环将数据全部添加
for i = 1 to adodc1.recordset.recordcount
j = 3 + i
k为数据列数
for k = 0 to 11
通过使用变量k和j变换单元格位置
q = chr(99 + k) & j
将datagrid1的数据放到单元格内
ex.range(q).value = datagrid1.columns(k)
next k
指针下移
if adodc1.recordset.eof = false then
adodc1.recordset.movenext
end if
next i
保存输入到事故信息查询结果.xls
exwbook.saveas "d:/电网配电线路管理信息系统/信息查询结果/事故信息查询结果.xls"
退出excel
ex.quit
end sub
我觉得这段程序很简单而且很使用,使用时不要打开 事故信息查询结果.xls否则会报错
存储时系统会自动提示是否更换文件,根据自己用发来用