Chuyển dữ liệu từ Excel vào Access

Một phần của tài liệu Các thủ thuật và phím tắt khi sử dụng MS Offce 2003 pdf (Trang 63 - 64)

I. Ms Office

2.Chuyển dữ liệu từ Excel vào Access

hỏi: Tôi muốn biết có cách nào nhập liệu vào table trong Access từ một tập tin Excel có sẵn? Xin chỉ cách dùng mã lệnh để có thể nhập liệu nhanh bằng cách nhấn một nút trên form nhập liệu.

Để nhập mới nội dung một table (trong Access) từ một tập tin Excel, ta có thể dùng một trong những cách sau đây:

1. Chọn File \ Get External Data \ Import từ trình đơn Access. Trên hộp thoại Import, chọn mục Microsoft Excel từ danh sách Files of type, rồi chọn tập tin Excel muốn đưa dữ liệu vào Access và bấm OK. Sau đó, theo từng bước hướng dẫn của Access. Tuy nhiên, dữ liệu luôn luôn được đưa vào một table mới, chứ không đưa vào table có sẵn cấu trúc được.

2. Tạo một macro, rồi trên form vẽ một nút lệnh để chạy macro này. Tuy nhiên, các thông số như TableName, FileName cần phải được gõ sẵn, hoặc phải bổ sung thêm một số “kỹ xảo” nữa rất mất công.

3. Cách khác hay hơn: dùng đối tượng DoCmd, một hình t hức sử dụng macro của Access trong VBA. Ví dụ: Tạo form như hình 1, gồm có một textbox (đặt tên txtTapTinExcel), một nút lệnh (có dấu 3 chấm, đặt tên cmdTimTapTin), một nút lệnh (để đọc dữ liệu từ tập tin Excel có tên chứa trong ô txtTapTinExcel, đặt tên cmdDocDuLieuTuExcel) và một ActiveX Control có tên dlgTimTapTin. ActiveX Control này được tạo bằng cách bấm nút More Controls (nút cuối cùng) trên ToolBox, rồi chọn mục Microsoft Common Dialog Control. Lần lượt gõ vào các thủ tục xử lý tình huống OnClick của các nút lệnh cmdDocDuLieuTuExcel và cmdTimTapTin (đoạn mã 1). Bạn lưu ý, thứ tự và tên các cột trong tập tin Excel phải giống như cấu trúc table đã khai báo trong Access.

Đoạn mã 1:

Private Sub cmdTimTapTin_Click() With dlgTimTapTin

.ShowOpen

txtTapTinExcel = .FileName End With

End Sub

Private Sub cmdDocDuLieuTuExcel_Click() Dim sTenTable As String

sTenTable = "tbNhanVien" „ Vñ duå

DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel8, _ sTenTable, txtTapTinExcel, True

End Sub

Một phần của tài liệu Các thủ thuật và phím tắt khi sử dụng MS Offce 2003 pdf (Trang 63 - 64)