程序需要,我在网上找了很久才找到,刚刚把程序写好,并加写了注释,希望能帮助大家
再写程序前先引用
microsoftexcel11.0objectLibrary
我看到的文章是10.0的,我这是office2003是11.0,只要安了excel就有这个引用~
PrivateSubcmdsave_Click()
MsgBox”文件保存为:D:\电网配电线路管理信息系统\信息查询结果\事故信息查询结果.xls”
DimiAsInteger
DimjAsInteger
DimexAsObject
DimexwbookAsObject
DimexsheetAsObject
Setex=CreateObject(“Excel.Application”)
Setexwbook=Nothing
Setexsheet=Nothing
Setexwbook=ex.Workbooks().Add
Setexsheet=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为记录个数使用循环将数据全部添加
Fori=1ToAdodc1.Recordset.RecordCount
j=3 i
k为数据列数
Fork=0To11
通过使用变量k和j变换单元格位置
q=Chr(99 k)&j
将datagrid1的数据放到单元格内
ex.Range(q).Value=DataGrid1.Columns(k)
Nextk
指针下移
IfAdodc1.Recordset.EOF=FalseThen
Adodc1.Recordset.MoveNext
EndIf
Nexti
保存输入到事故信息查询结果.xls
exwbook.SaveAs”D:\电网配电线路管理信息系统\信息查询结果\事故信息查询结果.xls”
退出excel
ex.Quit
EndSub
我觉得这段程序很简单而且很使用,使用时不要打开事故信息查询结果.xls否则会报错
存储时系统会自动提示是否更换文件,根据自己用发来用->