Import từ Excel sang Visual Basic
Số trang: 4
Loại file: pdf
Dung lượng: 112.96 KB
Lượt xem: 9
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Cách thực hiện: 1. Tạo project VB mới. 2. Tham chiếu (Reference) thư viện Excel (Microsoft Excel Object Library). 3. Soạn code với thuật toán: - Tạo đối tượng Excel.Application. - Mở Workbook (file excel) của bạn. - Lấy sheet chứa dữ liệu. - Đặt biến I (Long) chạy từ dòng đầu tiên của sheet đến dòng dữ liệu cuối cùng của sheet. Tại mỗi bước dùng lệnh SQL Insert hoặc Recordset.AddNew để thêm dữ liệu vào bảng dữ liệu (Đưa giá trị tại Cells(I,"tên cột") vào Field tương ứng trong bảng. Lưu ý định dạng ngày tháng, nếu...
Nội dung trích xuất từ tài liệu:
Import từ Excel sang Visual Basic Import từ Excel sang Visual BasicCách thực hiện:1. Tạo project VB mới.2. Tham chiếu (Reference) thư viện Excel (Microsoft Excel ObjectLibrary).3. Soạn code với thuật toán:- Tạo đối tượng Excel.Application.- Mở Workbook (file excel) của bạn.- Lấy sheet chứa dữ liệu.- Đặt biến I (Long) chạy từ d òng đầu tiên của sheet đến dòng dữ liệu cuối c ùngcủa sheet. Tại mỗi bước dùng lệnh SQL Insert hoặc Recordset.AddNew đểthêm dữ liệu vào bảng dữ liệu (Đưa giá trị tại Cells(I,tên cột) vào Field tươngứng trong bảng. Lưu ý định dạng ngày tháng, nếu bạn dùng định dạng ngàytrong Excel thì không sao, còn nếu dùng các định dạng ngày đặc biệt (khác vớiđịnh dạng của hệ thống) thì phải xử lý lại (dùng hàm DateSerial c ủa VB để tạogiá trị ngày từ giá trị chuỗi ngày lưu trong Excel). Lưu ý thêm về chiều dài củacác trường dữ liệu, import từ Excel vào database rất hay gặp trường hợp chiềudài dữ liệu trong Excel lớn h ơn kích thước định nghĩa của trường, gây ra lỗikhi cập nhật.- Đóng workbook, thoát Excel.Ví dụ (chỉ là mẫu vì bạn không đưa rõ nguồn dữ liệu):Giả sử bạn có file Excel: C:data.xls với bảng dữ liệu nằm ở sheet đầu tiên, cấutrúc bảng dữ liệu: dòng đầu tiên là tiêu đề, dữ liệu nằm từ dòng thứ 2 trởxuống, kết thúc dữ liệu bằng dòng trống (cột đầu tiên rỗng). Các cột dữ liệutheo bảng tương ứng:+ ngày tháng (c ột A)+ Mã Sản phẩm (cột B)+ Khách Hàng (c ột C)+ Số lượng sản phẩm (cột D)+ Hạn giao hàng (cột E)Giả sử tên bảng dữ liệu trong CSDL tên là: tblDataPrivate Sub Import() Dim mExcel As Excel.Application Dim mWorkBook As Excel.Workbook Dim mSheet As Excel.Worksheet Dim I As Long Dim mRs As ADODB.Recordset Set mExcel = New Excel.Application Set mWorkBook = mExcel.Workbooks.Open(C:data.xls,, True) Set mSheet = mWorkBook.Worksheets(1) -- Set mRs = New ADODB.Recordset mRs.Open tblData, mCnn, adOpenKeyset,adLockOptimistic I=2 While Len(mSheet.Cells(I, A)) > 0 mRs.AddNew mRs.Fields(NgayThang) = CDate(mSheet.Cells(I,A)) mRs.Fields(MaSanPham) = mSheet.Cells(I, B) mRs.Fields(KhachHang) = mSheet.Cells(I, C) mRs.Fields(SoLuong) = Val(mSheet.Cells(I, D)) mRs.Fields(HanGiaoHang) = Val(mSheet.Cells(I,E)) mRs.Update -- I=I+1 Wend mWorkBook.Close False mExcel.Quit mRs.Close Set mRs = NothingEnd SubNguồn: ddth.com
Nội dung trích xuất từ tài liệu:
Import từ Excel sang Visual Basic Import từ Excel sang Visual BasicCách thực hiện:1. Tạo project VB mới.2. Tham chiếu (Reference) thư viện Excel (Microsoft Excel ObjectLibrary).3. Soạn code với thuật toán:- Tạo đối tượng Excel.Application.- Mở Workbook (file excel) của bạn.- Lấy sheet chứa dữ liệu.- Đặt biến I (Long) chạy từ d òng đầu tiên của sheet đến dòng dữ liệu cuối c ùngcủa sheet. Tại mỗi bước dùng lệnh SQL Insert hoặc Recordset.AddNew đểthêm dữ liệu vào bảng dữ liệu (Đưa giá trị tại Cells(I,tên cột) vào Field tươngứng trong bảng. Lưu ý định dạng ngày tháng, nếu bạn dùng định dạng ngàytrong Excel thì không sao, còn nếu dùng các định dạng ngày đặc biệt (khác vớiđịnh dạng của hệ thống) thì phải xử lý lại (dùng hàm DateSerial c ủa VB để tạogiá trị ngày từ giá trị chuỗi ngày lưu trong Excel). Lưu ý thêm về chiều dài củacác trường dữ liệu, import từ Excel vào database rất hay gặp trường hợp chiềudài dữ liệu trong Excel lớn h ơn kích thước định nghĩa của trường, gây ra lỗikhi cập nhật.- Đóng workbook, thoát Excel.Ví dụ (chỉ là mẫu vì bạn không đưa rõ nguồn dữ liệu):Giả sử bạn có file Excel: C:data.xls với bảng dữ liệu nằm ở sheet đầu tiên, cấutrúc bảng dữ liệu: dòng đầu tiên là tiêu đề, dữ liệu nằm từ dòng thứ 2 trởxuống, kết thúc dữ liệu bằng dòng trống (cột đầu tiên rỗng). Các cột dữ liệutheo bảng tương ứng:+ ngày tháng (c ột A)+ Mã Sản phẩm (cột B)+ Khách Hàng (c ột C)+ Số lượng sản phẩm (cột D)+ Hạn giao hàng (cột E)Giả sử tên bảng dữ liệu trong CSDL tên là: tblDataPrivate Sub Import() Dim mExcel As Excel.Application Dim mWorkBook As Excel.Workbook Dim mSheet As Excel.Worksheet Dim I As Long Dim mRs As ADODB.Recordset Set mExcel = New Excel.Application Set mWorkBook = mExcel.Workbooks.Open(C:data.xls,, True) Set mSheet = mWorkBook.Worksheets(1) -- Set mRs = New ADODB.Recordset mRs.Open tblData, mCnn, adOpenKeyset,adLockOptimistic I=2 While Len(mSheet.Cells(I, A)) > 0 mRs.AddNew mRs.Fields(NgayThang) = CDate(mSheet.Cells(I,A)) mRs.Fields(MaSanPham) = mSheet.Cells(I, B) mRs.Fields(KhachHang) = mSheet.Cells(I, C) mRs.Fields(SoLuong) = Val(mSheet.Cells(I, D)) mRs.Fields(HanGiaoHang) = Val(mSheet.Cells(I,E)) mRs.Update -- I=I+1 Wend mWorkBook.Close False mExcel.Quit mRs.Close Set mRs = NothingEnd SubNguồn: ddth.com
Tìm kiếm theo từ khóa liên quan:
Javascript ASP.NET Tin học đại cương giáo trình Tin học đại cương bài giảng Tin học đại cương tài liệu Tin học đại cương lý thuyết Tin học đại cươngGợi ý tài liệu liên quan:
-
Ứng dụng công cụ Quizizz thiết kế trò chơi học tập trong giảng dạy học phần tin học đại cương
12 trang 301 0 0 -
Tài liệu hướng dẫn thực hành Tin học đại cương - ĐH Bách Khoa Hà Nội
40 trang 257 0 0 -
Giáo trình Tin học đại cương part 7
19 trang 232 0 0 -
Giáo trình Tin học đại cương: Phần 1 - ĐH Kinh tế Quốc Dân
130 trang 156 0 0 -
Giáo trình Tin học đại cương (Tái bản năm 2020): Phần 1 - PGS.TS. Nguyễn Thị Thu Thủy (Chủ biên)
105 trang 142 0 0 -
Giáo trình Tin học đại cương: Phần 1 - Vi Hồng Thắm
90 trang 129 0 0 -
Hướng dẫn thực hành lập trình C trên Visual Studio
9 trang 127 0 0 -
Giáo trình Tin học đại cương: Phần 2 - Trần Đình Khang
118 trang 118 0 0 -
Quản trị người dùng trong Exchange 2007 bằng Powershell
9 trang 107 0 0 -
Đề cương học phần Tin học đại cương
23 trang 104 0 0