Set xlApp = CreateObject("Excel.Application")
Set xlBook = Nothing
Set xlSheet = Nothing
Set xlBook = xlApp.Workbooks().Add
Set xlSheet = xlBook.Worksheets("sheet1")
xlApp.Visible = True
添加查询语句,导入EXCEL数据
Set xlQuery = xlSheet.QueryTables.Add(Rs_Data, xlSheet.Range("a1"))
( 说明:其中RS_DATA 是一个打开的RECORDSET,运行到上一句******提示错误:无效的过程或调用)
可能是OFFICE安装不完全的原因,或许是版本问题
-------------------------------------------------
xlSheet.QueryTables.Add(Rs_Data, xlSheet.Range("a1"))
这一句的功能其实就是EXCEL中
数据--->导入外部数据,然后从一个查询中导入
以下是我录制的一段宏,你可以看一下:
Sub Macro1()
Macro1 Macro
Administrator 记录的宏 2003-5-19
With ActiveSheet.QueryTables.Add(Connection:= _
"FINDER;D:\Program Files\Microsoft Office\Office10\Queries\MSN MoneyCentral Investor Currency Rates.iqy" _
, Destination:=Range("H22"))
.Name = "MSN MoneyCentral Investor Currency Rates"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = False
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlEntirePage
.WebFormatting = xlWebFormattingAll
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = True
.Refresh BackgroundQuery:=False
End With
End Sub
------------------------------------------------------------
还有,如果你不对打印的格式进行设置,SQL语句直接导入也是很好用的
select * into [Excel 8.0;database=导出目录].导出表名 from 表
Set xlBook = Nothing:这一句,得注释掉。你已经将它卸载了,又要求它添加表,显然不合理:Set xlBook = xlApp.Workbooks().Add
up
语句:set xlquery=xlsheet.querytables.add(rs_data,xlsheet.range("a1"))
在2000中运行有效,而在97中运行有问题,请各位高手看看在97中有没有类似的方法?
在XP中也有问题:无效的过程或调用
SQL语句:
select * into [Excel 8.0;database=导出目录].导出表名 from 表
我使用它出现错误:
服务器: 消息 2760,级别 16,状态 1,行 1
指定的所有者名称 Excel 8.0;DATABASE=C:\*** 不存在,或者您没有使用该名称的权限。
我的系统环境:WinXP,OfficeXP,VB6.0,Mdac2.7,VBSP5,SQLServer2000