Thủ Thuật Access

Thế Giới Thủ Thuật với Access

Import Dữ Liệu Từ Excel Vào Access

Posted by Noname on 07.12.2009

Để 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 thứ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

Nguồn: echip

8 phản hồi to “Import Dữ Liệu Từ Excel Vào Access”

  1. Anonymous said

    Cám ơn bạn vì rất nhiều bài viết hữu ích trong access, mình rất thích đọc blog này của bạn và đã hơn 1 lần giải quyết được các vấn đề rắc rối nảy sinh khi làm chương trình dựa vào những bài viết này.Mình có 1 thắc mắc như thế này, trong bài viết này bạn hướng dẫn import dữ liệu từ excel vào accesss, nhưng chỉ import được dữ liệu từ sheet đầu tiên mà thôi, mình muốn import dữ liệu từ sheet bất kỳ thì phải làm thế nào? Rất mong nhận được hồi âm của bạn. Cám ơn bạn rất nhiều.Email của minh: ngoctram1978@yahoo.com

  2. Noname said

    Blog chỉ là nơi tổng hợp các thủ thuật mình làm ra, hoặc sưu tầm được!Để thảo luận chủ đề Excel, bạn nên vào đây để cùng mọi người thảo luận nhé!

  3. Noname said

    http://thuthuataccess.co.cc/forum/thread-165.html

  4. Anonymous said

    Bạn ơi, giúp mình với. Mình có 1 query q_Data với các field: ID, Code010, Code020, Code030. Và 1 table t_Result(ID, CodeNo, Amount). Mình muốn kết quả tính toán được từ query được gán vô Amount tương ứng theo ID và CodeNo. Mình đã tìm nhiều trên các thủ thuật nhưng không thấy cách giải quyết. Các bạn vui lòng giúp hoặc gửi mail cho mình nhé: tuan_luuvan@yahoo.com. Cám ơn rất nhiều. Tuấn

  5. Noname said

    Bạn dùng Crosstab query lấy source từ query q_Data. Sau đó, append vào Table.Để thảo luận thêm, vui lòng vào diễn đàn: Diễn đàn thủ thuật access

  6. Anonymous said

    Bạn Noname ơi, bạn vui lòng hướng dẫn cụ thể hơn thiết kế crosstab query. Mình đã thử nhưng không biết làm thế nào để cho kết quả theo yêu cầu.Nhân tiện bạn cho mình hỏi: mình có 1 report lấy thông số beginning date và ending date từ 1 dialog form. Tuy nhiên khi in report thì bị hiển thị #name? chứ không phải là ngày như khi print preview. Cám ơn rất nhiều

  7. Noname said

    Vào diễn đàn và post file ví dụ mẫu!

  8. […] Import Dữ Liệu Từ Excel Vào Access December 20097 comments […]

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s

 
%d bloggers like this: