Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

将查询导入Excl

我心飞扬  发表于:2009-01-20 21:30:52  
复制

我在窗体中设命令按钮,利用宏outpuTo,将查询结果导出,1、

=[currentproject].[path] & "\查询结果.xls"

要求导出的目标文件夹,必须与程序在一个目录,我可不可以设指定文件夹。

2、可不可以导入查询结果.xls的[shett1],

 

Top
小魏 发表于:2009-01-20 22:08:05

看看这段代码能否帮你.这是从高手那里学来的.

 

Public Function AccessToExcel(ByVal TempSql As String, Optional TempName As String)
'数据转Excel文件

   ' On Error GoTo Err:

    Dim row As Integer
    Dim col As Integer
    Dim Conn As ADODB.Connection

    Dim Rs As ADODB.Recordset

    Dim SQL As String

    Dim ExcelApp As Excel.Application

    Dim ExcelWst As Worksheet  ''excel窗体

    Dim RsCount As Integer    ''记录数

    Set Conn = CurrentProject.Connection    '''本地连接

    If TempSql = "" Then Exit Function
    ' sql = TempSql ' "select * from 书本"

    Set Rs = CreateObject("ADODB.Recordset")

    Rs.Open TempSql, Conn, 1   ' 1 = adOpenKeyset

    Set ExcelApp = New Excel.Application
    Set ExcelWst = ExcelApp.Workbooks.Add.Worksheets(1)

    ExcelWst.Name = TempName

    For col = 0 To Rs.Fields.count - 1
        ExcelWst.Cells(1, col + 1) = Rs.Fields(col).Name
    Next

    row = 2
    RsCount = Rs.RecordCount

    Rs.MoveFirst

    While Not Rs.EOF

'        FunProGressBar row - 1, RsCount

        For col = 0 To Rs.Fields.count - 1

            ExcelWst.Cells(row, col + 1) = Rs.Fields(col)

            ''转换日期型字符的表示格式
            If Rs.Fields(col).Type = 7 Then

                ExcelWst.Cells(row, col + 1).NumberFormatLocal = "yyyy-m-d;@"

            End If

        Next

        row = row + 1
        Rs.MoveNext
    Wend

    'debug.print "RsCount", RsCount, row

    Rs.Close

    Set Rs = Nothing
    Set Conn = Nothing

    ExcelApp.Visible = True

Err:
   ' If Err.Number <> 0 Then ShowErrMsg Err.Number, Err.Description, "MSys_Comm_SystemForm.AccessToExcel"
    Exit Function

End Function



钱玉炜 发表于:2009-01-21 13:42:15

可以自己设置导出的路径,只需要把currentproject.path 改成对应的目录即可



我心飞扬 发表于:2009-01-21 21:00:13

1、如果我要导入G:\查询结果.xls的[shett1],怎么改?

2、二楼的代码,我输入显示缺少End Sub



总记录:3篇  页次:1/1 9 1 :