快捷搜索:   服务器  PHP  安全  IIS  linux 安全

EXCEL通过VBA SQL读取导入另外一个EXCEL文件内容

先看一下代码

Sub Macro1()
    Dim cnn As Object, SQL$
    Set cnn = CreateObject("ADODB.Connection")
    cnn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.Path & "对应关系.xlsx" & ";Extended Properties='Excel 12.0;HDR=YES;IMEX=0'"
    SQL = "select 生产序列,货号 from [简码$]"
    [a1].CopyFromRecordset cnn.Execute(SQL)
    cnn.Close
    Set cnn = Nothing
End Sub

代码解析

"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.Path & "对应关系.xlsx" & ";Extended Properties='Excel 12.0;HDR=YES;IMEX=0'"

这段需要根据你不同EXCEL版本来定义,这个是13版的EXCEL使用的OLEDB

旧版(03等使用.XLS的)使用 "provider=microsoft.jet.oledb.4.0;extended properties='Excel 8.0;hdr=no';data source=" & ThisWorkbook.Path & "对应关系.xlsx"


对应关系.xlsx这个就是需要读入的对象文件,这个代码会将对应关系.xlsx里面“简码”这张表里面的生产序列和货号列导入当前表格,从A1列开始导入


对象文件内容如下:

blob.png

您可能还会对下面的文章感兴趣: