本人用VB作一个系统,要从数据库中提取数据放到EXCEL中,用VB打开EXCEL并对数据进行进行简单计算.问题::
1, vb中打开和调用EXCEL有什么区别???
2, 用VB操作EXCEL时,能否在EXCEL中使用VBA对数据进行计算,并保存到数据库中????等待高手回答,先多谢了!

解决方案 »

  1.   

    vb中打开和调用EXCEL有什么区别,
    没什么区别!都是执行EXCEL然后用户在EXCE中做些东西在VB中当然可以调用宏,在宏里面写计算就行了,要写回数据库就有点麻烦了,你要先在EXCEL中取出要更改的数据。
      

  2.   

    1. 打开文件,调用功能;
    2. VBA可以做.
      

  3.   

    导入数据到EXCELDim objExlBok As New Excel.Workbook
    Dim objExlSht As New Excel.Worksheet
    Dim objExlApp As New Excel.Application
    Private Sub Command1_Click()
        Set objExlBok = objExlApp.Workbooks.Add
        Set objExlSht = objExlBok.Sheets(1)
        With MSFlexGrid1
            objExlSht.Cells(1, 1) = .TextMatrix(0, 0)
            objExlSht.Cells(1, 2) = .TextMatrix(0, 1)
            objExlSht.Cells(1, 3) = .TextMatrix(0, 2)
            objExlSht.Cells(1, 4) = .TextMatrix(0, 3)
            objExlSht.Cells(1, 5) = .TextMatrix(0, 4)
            
            objExlSht.Cells(2, 1) = .TextMatrix(1, 0)
            objExlSht.Cells(2, 2) = .TextMatrix(1, 1)
            objExlSht.Cells(2, 3) = .TextMatrix(1, 2)
            objExlSht.Cells(2, 4) = .TextMatrix(1, 3)
            objExlSht.Cells(2, 5) = .TextMatrix(1, 4)        objExlSht.Cells(3, 1) = .TextMatrix(2, 0)
            objExlSht.Cells(3, 2) = .TextMatrix(2, 1)
            objExlSht.Cells(3, 3) = .TextMatrix(2, 2)
            objExlSht.Cells(3, 4) = .TextMatrix(2, 3)
            objExlSht.Cells(3, 5) = .TextMatrix(2, 4)        objExlSht.Cells(4, 1) = .TextMatrix(2, 0)
            objExlSht.Cells(4, 2) = .TextMatrix(2, 1)
            objExlSht.Cells(4, 3) = .TextMatrix(2, 2)
            objExlSht.Cells(4, 4) = .TextMatrix(2, 3)
            objExlSht.Cells(4, 5) = .TextMatrix(2, 4)        objExlSht.Cells(5, 1) = .TextMatrix(3, 0)
            objExlSht.Cells(5, 2) = .TextMatrix(3, 1)
            objExlSht.Cells(5, 3) = .TextMatrix(3, 2)
            objExlSht.Cells(5, 4) = .TextMatrix(3, 3)
            objExlSht.Cells(5, 5) = .TextMatrix(3, 4)
        End With
        objExlApp.Visible = True
    End SubPrivate Sub Form_Load()
        With MSFlexGrid1
            .Rows = 5
            .Cols = 5
            .TextMatrix(0, 0) = "序号"
            .TextMatrix(0, 1) = "姓名"
            .TextMatrix(0, 2) = "性别"
            .TextMatrix(0, 3) = "年龄"
            .TextMatrix(0, 4) = "备注"
            
            .TextMatrix(1, 0) = "1"
            .TextMatrix(1, 1) = "张三"
            .TextMatrix(1, 2) = "男"
            .TextMatrix(1, 3) = "25"
            .TextMatrix(1, 4) = "无"
            
            .TextMatrix(2, 0) = "2"
            .TextMatrix(2, 1) = "李四"
            .TextMatrix(2, 2) = "女"
            .TextMatrix(2, 3) = "24"
            .TextMatrix(2, 4) = "无"
            
            .TextMatrix(3, 0) = "3"
            .TextMatrix(3, 1) = "王五"
            .TextMatrix(3, 2) = "男"
            .TextMatrix(3, 3) = "26"
            .TextMatrix(3, 4) = "无"
            
            .TextMatrix(4, 0) = "4"
            .TextMatrix(4, 1) = "赵六"
            .TextMatrix(4, 2) = "女"
            .TextMatrix(4, 3) = "23"
            .TextMatrix(4, 4) = "无"
        End With
    End SubPrivate Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
        objExlApp.Quit
        Set objExlSht = Nothing
        Set objExlApp = Nothing
    End Sub