http://topic.csdn.net/t/20031114/20/2461899.html
我用了这个帖子中3#,4#的方法从sqlserver2000导出到excel中提示错误错误号:0x80004005
错误源:Microsoft JET Database Engine
错误描述:找不到可安装的 ISAM。我的office是2003.请问这是怎么回事?怎么解决?

解决方案 »

  1.   

    --导入数据   
      set   @sql='openrowset(''Microsoft.ACE.OLEDB.12.0'',''Persist Security Info=False;Data Source='+@path+@fname+''',['+@sheetname+'$])'  替换同样的地方试试看 
      

  2.   

    再试:重新注册Msexcl40.dll组件:
    Regsvr32 c:\windows\system32\msexcl40.dll
      

  3.   


    希望这个文章对你有帮助 :
    http://support.microsoft.com/kb/209805
      

  4.   

    将SQL SERVER中查询到的数据导成一个Excel文件
    -- ======================================================
    T-SQL代码:
    EXEC master..xp_cmdshell 'bcp 库名.dbo.表名out c:\Temp.xls -c -q -S"servername" -U"sa" -P""'
    参数:S 是SQL服务器名;U是用户;P是密码
    说明:还可以导出文本文件等多种格式
    实例:EXEC master..xp_cmdshell 'bcp saletesttmp.dbo.CusAccount out c:\temp1.xls -c -q -S"pmserver" -U"sa" -P"sa"'
    EXEC master..xp_cmdshell 'bcp "SELECT au_fname, au_lname FROM pubs..authors ORDER BY au_lname" queryout C:\ authors.xls -c -Sservername -Usa -Ppassword'
    在VB6中应用ADO导出EXCEL文件代码: 
    Dim cn  As New ADODB.Connection
    cn.open "Driver={SQL Server};Server=WEBSVR;DataBase=WebMis;UID=sa;WD=123;"
    cn.execute "master..xp_cmdshell 'bcp "SELECT col1, col2 FROM 库名.dbo.表名" queryout E:\DT.xls -c -Sservername -Usa -Ppassword'"
      

  5.   

    to:happyflystone
    用你的方法.采用Microsoft.ACE.OLEDB.12.0 提示"未能找到 OLE DB 提供程序 'Microsoft.ACE.OLEDB.12.0' 的注册表项"
    注册Msexcl40.dll 还是没效果.to:wufeng4552 
    你的方法我知道.这个我试过,可这个不是我想要的答案,在有别的解决方法情况下,我不想用bcp做.继续寻求帮助!
      

  6.   

    其实最简单的办法是:
    你把想要的结果查询出来,再把查询的结果保存为.csv
    再用Excel打开,.csv文件可以转换成.xls文件格式