请求高手帮忙。
从数据库查询出来的数据已经显示在了DataGrid1上。
假如有“学号”“姓名”两个列。共有10条数据。
现在我想通过xlSheet.Cells的方法给对应的单元格赋值,假如这里是第1列赋值学号,第2列赋值姓名。10条记录分别赋给1到10行,需要怎样实现,谢谢了。

解决方案 »

  1.   

      dim Es as Object  
        Set Es = CreateObject("Excel.Sheet")
        For i = 0 To 1
            Es.Application.cells(1, 1 + i) = Data1.Recordset.Fields(i).Name
        Next
        For i = 0 To Data1.Recordset.RecordCount - 1
            For J = 0 To 1
                Es.Application.cells(2 + i, 1 + J) = Data1.Recordset(J)
            Next
            Data1.Recordset.MoveNext
            DoEvents
        Next
        Es.Application.Visible = True
      

  2.   

    Private Sub Command1_Click()Dim r As Integer
    Dim c As Integer
    Set xlApp = CreateObject("Excel.Application")
    Set xlBook = xlApp.Workbooks.Open(App.Path & "\1.xls")
    xlApp.Visible = True
    Set xlsheet = xlBook.Worksheets("Sheet1")For r = 0 To MSHFlexGrid1.Rows - 1 '行循环
    For c = 0 To MSHFlexGrid1.Cols - 1 '列循环
    MSHFlexGrid1.Row = r
    MSHFlexGrid1.Col = c
    xlBook.Worksheets("Sheet1").Cells(r + 1, c + 1) = MSHFlexGrid1.Text '保存到EXCEL
    Next c
    Next r
    MSHFlexGrid1.Redraw = True
    xlApp.DisplayAlerts = False '不进行安全提示
    xlApp.Save
    xlApp.Quit
    MsgBox "数据已导入到根目录下的1.xls中"Set xlApp = NothingEnd Sub用的是MSHFlexGrid,方法就是这个了~你改一下。