Và bây giờ bắt đầu:
Tạo 1 form tên là frmTest
Vẽ 1 Textbox tên là txtPath.
Vẽ 1 nút nhấn là cmdSelectfile
Vẽ 1 textBox đặt là txtRange để bạn nhập tên sheet muốn import vào
Vẽ 1 Textbox đặt tên là txtTable để bạn nhập tên Table muốn lưu
Vẽ 1 nút nhấn có tên cmdImport
Tạo 1 module copy đoạn code sau vào:
Function getFile(Tit As String, formatName As String, formatType As String)
Dim dlgOpen As FileDialog
Set dlgOpen = Application.FileDialog(msoFileDialogOpen)
With dlgOpen
.Title = Tit
.Filters.Clear
.Filters.Add formatName, formatType
.AllowMultiSelect = False
result = .Show
If (result <> 0) Then
getFile = Trim(dlgOpen.SelectedItems.Item(1))
End If
End With
End Function
Và lưu thành tên Module 1
Trong event Onclick của nút cmdSelectfile, ta nhập như sau:
Private Sub cmdSelectfile_Click()
Me![txtPath] = getFile("c:\", "Select the Excel File", "*.xls")
End Sub
Trong event Click của nút cmdImport, ta nhập như sau:
Private Sub cmdImport_Click()
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel8, txtTenTable, txtPath, True, txtRange
MsgBox "import thanh cong"
End Sub
Giờ sử dụng: đầu tiên ta click vào nút cmdSelectfile để chọn file Excel muốn import
Nhập tên Sheet muốn import vào txtRange (ví dụ: Sheet1:A1:H300)
Nhập tên table muốn lưu. (Ví dụ: Table1)
Và nhấn Nút Import
Rồi hưởng thành quả
DownloadDemo
____________________________________________________________________________________
Thảo luận thêm: http://thuthuataccess.co.cc/forum
Trong chương trình của Noname: txtTenSheet ---> tên Table trong file Access.
Trả lờiXóaChỉ lựa chọn được File Excel, không lựa chọn được Sheet.
Chương trình của Noname chọn Sheet đầu tiên của File Excel và nhập vào table có tên là txtTenSheet.
Đã chỉnh lại chút ích! Cảm ơn Haquocquan đã phát hiện lỗi giúp!
Trả lờiXóaChào anh,
Trả lờiXóaem bị báo lỗi thế này ở dòng này : Dim dlgOpen As FileDialog
Nội dung thông báo là User-defined type not defined
Xử lý sao giờ anh?