很多问题哈~~
目前碰到的是
     Dim xlApp As Excel.Application  '定义EXCEL类
     Set xlApp = CreateObject("Excel.Application") '创建EXCEL应用类运行时。 错误提示是“Activex部件不能创建对象”我是Excel 2007   VB工程引用的只有Microsoft Excel 12.0 object library 。。
不知道是不是这个原因。。菜鸟求教。。

解决方案 »

  1.   

    Dim xlApp As New Excel.Application 
    一句就可以了
      

  2.   

    xlApp.Visible = True '设置EXCEL可见
    出现“自动化错误”
    ~~
    Dim xlApp As New Excel.Application  '定义EXCEL类
    Dim xlBook As New Excel.Workbook '定义工件簿类
    Dim xlsheet As New Excel.Worksheet  '定义工作表类
    Private Sub Command1_Click() '打开EXCEL过程
    If Dir("D:\temp\excel.bz") = "" Then '判断EXCEL是否打开
    xlApp.Visible = True '设置EXCEL可见
    Set xlBook = xlApp.Workbooks.Open("D:\temp\bb.xls") '打开EXCEL工作簿
    Set xlsheet = xlBook.Worksheets(1) '打开EXCEL工作表
    xlsheet.Activate '激活工作表
    xlsheet.Cells(1, 1) = "abc" '给单元格1行驶列赋值
    xlBook.RunAutoMacros (xlAutoOpen) ' 运行EXCEL中的启动宏
    Else
    MsgBox ("EXCEL已打开")
    End If
    End Sub
    这是打开Excel的代码。。
      

  3.   

    既然创建EXCEL了,就不用在引用,改为
      Dim xlApp 
      Set xlApp = CreateObject("Excel.Application") '创建EXCEL应用类
      

  4.   

    你已经引用了excel 12.0 为何还要去 CreateObject?用了CreateObject 就没必要再去引用excel 12.0了Dim xlApp As Object
    Dim vbbook As Object
    Private Sub Form_Load()
       AppDisk = IIf(Right(App.Path, 1) = "\", App.Path, App.Path & "\")
    End SubPrivate Sub Command1_Click()
       Set xlApp = CreateObject("Excel.Application") '创建excel对象
        xlApp.Visible = True '对象可见
       Set vbbook = xlApp.Workbooks.Open(AppDisk & "tt.xls") '打开本地路径的tt.xls文件
      

  5.   

    ~~ 那个是百度上搜的。
    请解释下AppDisk = IIf(Right(App.Path, 1) = "\", App.Path, App.Path & "\")
    啥意思呢 看不懂
      

  6.   

    还有我改成了3F的方法去掉了工程引用之后貌似仍旧是这个错误。。“Activex部件不能创建对象”
    求教。。
      

  7.   

    2#楼的代码没有出现主题帖中的错误,说明声明已经没有问题,是你的逻辑有问题
    不为空的时候才能去打开文件If Dir("D:\temp\excel.bz") <> "" Then '判断EXCEL是否打开
    xlApp.Visible = True '设置EXCEL可见
      

  8.   

    回8F:
    可是改成你这样,就是一直显示是MSGBOX里的内容了(DIR不太懂就知道是查询语句)。
    然后我将If Dir("D:\temp\excel.bz") <> "" Then  注释后出现的是xlApp.Visible = True  这句的“自动化错误”
      

  9.   

    这说明你根本没D:\temp\excel.bz这个文件,所以出提示了
    打开D盘找找
      

  10.   

    可是我去掉判断If Dir("D:\temp\excel.bz") <> "" Then 
    还是会出现 xlApp.Visible = True 这句的“自动化错误”
    这句如何解决呢?
      

  11.   


    给你一个完整的 添加 Command1 
    Option Explicit
    Dim VbExcell As Object
    Dim vbbook As Object
    Dim i&, AppDisk$, Fname$Private Sub Form_Load()
       Me.Move (Screen.Width - Me.Width) \ 2, (Screen.Height - Me.Height) \ 2
       AppDisk = IIf(Right(App.Path, 1) = "\", App.Path, App.Path & "\")
    End SubPrivate Sub Form_Unload(Cancel As Integer)
       VbExcell.Quit
       Set vbbook = Nothing
       Set VbExcell = Nothing
       End
    End SubPrivate Sub Command1_Click()
       Fname = AppDisk & "Blank.xls"
       If Dir(Fname) = "" Then MsgBox "拟导出的文件不存在!": Exit Sub '要导出的文件如不存在则退出本事件
       If IsOpen(Fname) Then MsgBox "文件已经打开!": Exit Sub '检查xls文件是否已打开
       Set VbExcell = CreateObject("Excel.Application") '创建excel对象
       VbExcell.Visible = True '对象可见
       Set vbbook = VbExcell.Workbooks.Open(Fname)
       VbExcell.Sheets("塔板水力学").Select
       For i = 10 To 25
          VbExcell.Cells(i, 3) = CStr(i)
       Next i
       MsgBox "导入完成!"
    End SubFunction IsOpen(XlsFile$) As Boolean
       On Error GoTo Errhandler
       IsOpen = False
       Open XlsFile For Binary Lock Read Write As #1
       Close #1
    Errhandler:
       If Err.Number = 70 Then IsOpen = True
    End Function
      

  12.   

        Dim XlApp As New Excel.Application
        Dim XLWorkBook As New Excel.Workbook
        Dim XLWorkSheet As New Excel.Worksheet
        Set XLWorkBook = XlApp.Workbooks.Open("D:\temp\excel.bz")
        Set XLWorkSheet = XLWorkBook.Sheets(1)
      

  13.   

    是在Fname = AppDisk & "Blank.xls"
    这里面改成我的EXCEL文件?
      

  14.   

    回泰山。。
    2F我发的那个代码
        Dim XlApp As New Excel.Application
        Dim XLWorkBook As New Excel.Workbook
        Dim XLWorkSheet As New Excel.Worksheet
        Set XLWorkBook = XlApp.Workbooks.Open("D:\temp\excel.bz")
        Set XLWorkSheet = XLWorkBook.Sheets(1)
    都有的。。还是出错。
      

  15.   

    http://download.csdn.net/source/2341786
      

  16.   

    原因是EXCEL 2007版本不能用着代码,在2003上成功了。还是谢谢