+ -
当前位置:首页 → 问答吧 → 从ACCESS的查询表能导出数据到EXCEL吗?

从ACCESS的查询表能导出数据到EXCEL吗?

时间:2010-07-23

来源:互联网

以前没有注意,当在ECXEL里,采取外部ACCESS导入数据时,提供可导入数据没有查询,只有原表,晕啊?难道从ACCESS的查询不能把数据导出到EXCEL吗?

作者: abc123qqq   发布时间: 2010-07-23

可以的啊!不知道你是怎么做的?

作者: zez   发布时间: 2010-07-23

生产进度.rar (30.3 KB)
生产进度.rar (30.3 KB)
下载次数: 19
2010-7-23 20:39

我采取插入透视表,外部数据........方法,请指教

作者: abc123qqq   发布时间: 2010-07-23

SELECT A.识别码, A.厂家, A.图号, A.日期, A.数量 AS 订单数量, B.完成量, A.数量 - iif (B.完成量) AS 剩余量
FROM (SELECT 图号 & 数量 & Format(日期,"yyyy-mm-dd") AS 识别码, 厂家, 图号, 数量, 日期 FROM 计划) AS A
LEFT JOIN (SELECT 识别码, Sum(完成) AS 完成量 FROM 完成 GROUP BY 识别码) AS B ON A.识别码 = B.识别码

以上代码是网友给我写的,蓝色字原本是NZ,但是导入Excel时,提示函数不对,改为IIF后,却又提示错误,能着我了

作者: abc123qqq   发布时间: 2010-07-23

ACCESS文件试高版本的,我打不开.代码试一试:
SELECT A.识别码, A.厂家, A.图号, A.日期, A.数量 AS 订单数量, B.完成量, A.数量 - iif (isnull(B.完成量),0,B.完成量)  AS 剩余量
FROM (SELECT 图号 & 数量 & Format(日期,"yyyy-mm-dd") AS 识别码, 厂家, 图号, 数量, 日期 FROM 计划) AS A
LEFT JOIN (SELECT 识别码, Sum(完成) AS 完成量 FROM 完成 GROUP BY 识别码) AS B ON A.识别码 = B.识别码

作者: zez   发布时间: 2010-07-23

SELECT A.识别码, A.厂家, A.图号, A.日期, A.数量 AS 订单数量, B.完成量, A.数量 - iif (B.完成量,B.完成量) AS 剩余量
FROM (SELECT 图号 & 数量 & Format(日期,"yyyy-mm-dd") AS 识别码, 厂家, 图号, 数量, 日期 FROM 计划) AS A
LEFT JOIN (SELECT 识别码, Sum(完成) AS 完成量 FROM 完成 GROUP BY 识别码) AS B ON A.识别码 = B.识别码

IIF后边缺少个条件,我现在这样改的,能达到目的,总是感觉不对,IIF不应该这么用,请看下正确的写法?附加同上

作者: abc123qqq   发布时间: 2010-07-23

ACCESS查询表 → 导出 → Excel

作者: huangwengui   发布时间: 2010-07-23

内行就是不一样,不看附件,看下代码就知道什么意思。
结果正确,zez ,谢谢您。
也谢谢楼上朋友,谢谢提供的帮助。

作者: abc123qqq   发布时间: 2010-07-23

Public Sub 日报表()
    Dim mydata As String, mytable As String, SQL As String
    Dim cnn As ADODB.Connection
    Dim rs As ADODB.Recordset
    Dim i As Integer
    ActiveSheet.Cells.Clear
    mydata = ThisWorkbook.Path & "\易飞品号信息.mdb"    '指定数据库
    mytable = "商品信息"      '指定数据表
    '建立与数据库的连接
    Set cnn = New ADODB.Connection
    With cnn
        .Provider = "microsoft.jet.oledb.4.0"
        .Open mydata
    End With
    '查询数据表
    SQL = "select 品号,品名,规格,单位,商品分类 from " & mytable & " order by 序号"
    Set rs = New ADODB.Recordset
    rs.Open SQL, cnn, adOpenKeyset, adLockOptimistic
    '复制字段名
    For i = 1 To rs.Fields.Count
        Cells(1, i) = rs.Fields(i - 1).Name
    Next i
    With Range(Cells(1, 1), Cells(1, rs.Fields.Count))
        .Font.Bold = True
        .HorizontalAlignment = xlCenter
    End With
    '复制全部数据
    Range("A2").CopyFromRecordset rs
    '设置工作表格式
    ActiveSheet.Columns.AutoFit
    rs.Close
    cnn.Close
    Set rs = Nothing
    Set cnn = Nothing
End Sub

作者: 457858439   发布时间: 2010-07-23

aDo连接啊。。我也在研究

作者: cekous2010   发布时间: 2010-07-26

学习了,终于可以实现将查询导出到excel了

作者: windbellst   发布时间: 2010-07-27

留个脚印,谢谢

作者: fgwei   发布时间: 2010-12-12