从VB中的Datagride中向excel导入数据
从VB中的Datagride中向excel导入数据,从VB中的Datagride中向excel导入数据
程序需要,我在网上找了很久才找到,刚刚把程序写好,并加写了注释,希望能帮助大家再写程序前先引用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.QuitEnd Sub我觉得这段程序很简单而且很使用,使用时不要打开 事故信息查询结果.xls否则会报错存储时系统会自动提示是否更换文件,根据自己用发来用