Đây là đoạn ví dụ code vba nạp 1 file excel tên là nhanvien.xlsx ở ổ D vào table của access có tên tbNhanSu
Bước 1: Tạo 1 file excel có các cột theo tứ tự để nạp vào table access
Mã nhân viên    Họ tên     Phòng ban   HSL
001                   Trần A     Kế toán          5
002                   Trần B     nhân sự         6
003                   Trần C     Kế toán          7
Bước 2: Tạo ra 1 file Access
 - Sau đó tạo 1 table tbNhanVien có các cột: MaNV,HoTen,PhongBan 
 - Vào 1 From có tên frmNapFileExcel
     Thêm vào form 1 button có tên btNapExcel sau đó ta copy đoạn code này vào
Private Sub btNapExcel_Click()
  
SQL = "Insert into tb_ChucVu_test(MaVV,HoTen,PhongBan,HSL) Values('{0}','{1}','{2}',{3})"
duongdanfile="D:\nhanvien.xlsx"
Dim conn As Object, db As Object, rst As DAO.Recordset
Set conn = CreateObject("DAO.DBEngine.120") '
' EXCEL CURRENT VERSION
Set db = conn.OpenDatabase(duongdanfile, False, True, "Excel 12.0 Xml;HDR=Yes;")
tensheet = InputBox("Ban vui long nhat ten sheet ?", "", "Sheet1")
Set rst = db.OpenRecordset("SELECT * FROM [" & tensheet & "$]")
'MsgBox rst.Fields(0)
rst.MoveLast
rst.MoveFirst
'MsgBox rst.RecordCount
MsgBox "File excel co " & rst.RecordCount & " dong du lieu "
tongbangghi_thanhcong = 0
For i = 1 To rst.RecordCount
    'MsgBox rst.Fields(0)
   'MsgBox rst.Fields(1)
    'MsgBox rst.Fields(2)
    sql_t = SQL
    sql_t = Replace(sql_t, "{0}", rst.Fields(0))
    sql_t = Replace(sql_t, "{1}", rst.Fields(1))
    sql_t = Replace(sql_t, "{2}", rst.Fields(2))
    sql_t = Replace(sql_t, "{3}", rst.Fields(3))
    DoCmd.SetWarnings False
    
    dem_ma_cv_trong_csdl = 0
    dem_ma_cv_trong_csdl = DCount("MaNV", "tbNhanVien", "MaBV='" & rst.Fields(0) & "'")
    If dem_ma_cv_trong_csdl = 0 Then
        DoCmd.RunSQL sql_t
        tongbangghi_thanhcong = tongbangghi_thanhcong + 1
    End If
    
    
    rst.MoveNext
Next
MsgBox "Chen duoc " & tongbangghi_thanhcong & " bang ghi"
End Sub
Cách code nạp file excel vào table access với vba, sử dụng thư viện hỗ trợ từ Office