【Access源码示例】导入系列-Excel之循环读取单元格数据方法-金宇
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> 源码示例


【Access源码示例】导入系列-Excel之循环读取单元格数据方法

发表时间:2020/8/25 9:25:21 评论(0) 浏览(5749)  评论 | 加入收藏 | 复制
   
摘 要:通过循环读取Excel每行单元格内的数据导入到Access的表中。
正 文:

点击下载此附件


代码如下

Private Sub btnImport_Click()
On Error GoTo ErrorHandler:
    Dim strSQL   As String
    Dim rst      As Object
    Dim cnn      As Object
    Dim rstXL    As Object
    Dim objExcel   As Object
    Dim objBook    As Object
    Dim objSheet   As Object
    Dim lngI       As Long
    
    If IsNull(Me.strFilePath) Then
        MsgBox "请先选择文件!", vbInformation, "提示"
        Me.strFilePath.SetFocus
        Exit Sub
    End If
    If IsNull(Me.strSheetName) Then
        MsgBox "请先选择Excel工作表!", vbInformation, "提示"
        Me.strSheetName.SetFocus
        Exit Sub
    End If
    
    
    
    '打开Access记录集
    Set rst = CreateObject("adodb.recordset")
    rst.Open "select * from tb_Parts where 1=2", CurrentProject.Connection, 1, 3
    
    '打开Excel
    Set objExcel = CreateObject("Excel.Application")
    Set objBook = objExcel.Workbooks.Open(Me.strFilePath)
    Set objSheet = objBook.WorkSheets("" & Me.strSheetName & "")
    objSheet.Select
    With objSheet
        For lngI = 2 To 65536  '循环行记录
            If .Cells(lngI, 1) = "" Then Exit For
            rst.AddNew
            rst![Part No] = .Cells(lngI, 1)
            rst![Part Name] = .Cells(lngI, 2)
            rst![Category] = .Cells(lngI, 3)
            rst![Part Type] = .Cells(lngI, 4)
            rst![Unit Cost] = .Cells(lngI, 5)
            rst![Cons Cost] = .Cells(lngI, 6)
            rst.Update
        Next
    End With

    rst.Close

    MsgBox "Import Success!"
    DoCmd.OpenTable "tb_Parts"
    
Exithere:
    DoCmd.Hourglass False
    If Not objBook Is Nothing Then objBook.Saved = True
    If Not objExcel Is Nothing Then objExcel.Quit
    Set objSheet = Nothing
    Set objBook = Nothing
    Set objExcel = Nothing
    Set rst = Nothing
    Exit Sub

ErrorHandler:
        MsgBox Err.Description, vbInformation, "提示"
        Resume Exithere
End Sub

图   示:


Access软件网交流QQ群(群号:198465573)
 
 相关文章
带外键EXCEL模板导入ACCESS的解决方法  【hannanrenjie  2015/8/5】
VBA实用技巧-导入excel  【Allen Lee  2015/11/24】
再谈批量导入Excel数据  【cspa  2015/12/2】
批量导入自选文件夹下相同格式Excel表示例  【网行者  2016/7/14】
导入Access的对象【Access每天3分钟第三季】  【张志  2019/11/22】
【Access源码示例】导入系列-Excel之Insert Int...  【金宇  2020/7/28】
【Access源码示例】导入系列-Excel之TransferSp...  【金宇  2020/8/4】
【Access源码示例】导入系列-Excel之ADO记录集方法  【金宇  2020/8/11】
Access快速开发平台2.5.1导入EXCEL进度条示例  【lmqlt  2020/8/20】
常见问答
技术分类
相关资源
文章搜索
关于作者

金宇

文章分类

文章存档

友情链接