-
RE: Demo tổng hợp xuất Table, Query sang Excel có điều kiện ở vị trí nào cũng được
duynghiep89 > 08-01-16, 01:02 AM
(05-02-15, 01:59 AM)maidinhdan Đã viết: Như lời đã hứa từ những hôm trước hôm nay xin mạo mụi gọi là tổng hợp chứ code không phải tự mình viết, chỉ ngâm cứu chỉnh sửa lại chút để ra thành bài Demo tổng hợp xuất Table, Query sang Excel có điều kiện
Thông tin về demo:
1. Xuất từ table ra file Excel theo mẫu Excel có sẳn và tự đặt tên;
2. Xuất từ Query có đặt điều kiện ra file Excel theo theo mẫu Excel có sẳn và tự đặt tên.
Form demo
Mẫu Excel dựng sẳn
Demo: https://sites.google.com/site/congthucassecc/home/Tong%20hop_Access%20Xuat%20sang%20Excel_VIP.rar?attredirects=0&d=1
Bổ sung link mediafire: http://www.mediafire.com/download/l40a4z...opass).rar ( Không có đặt pass VBA)
Nguồn được tổng hợp sưu tầm trên trang thuthuataccess.( Tác giả của code được đính trong demo)
Pass VBA: ngày mai post. Vì sợ nó chạy lỗi. gần 1 giờ rồi
Pass VBA: codobanghiep
Bổ sung code xuất từ nhiều table/query ra nhiều Sheet Excel
Đoạn code sau sẽ giúp xuất 2 table vào 1 file Excel theo mẫu, được chỉ định vị trí trước
Đã test:
Mã PHP:Private Sub cmdExport_Click()
On Error Resume Next
Dim db As DAO.Database
Dim rs1 As DAO.Recordset ' table1'
Dim rs2 As DAO.Recordset 'table2'
Dim tb1 As String ' table1'
Dim tb2 As String ' table2'
Dim oApp As New Excel.Application
Dim oBook As Excel.Workbook
Dim oSheet As Excel.Worksheet
Set oBook = oApp.Workbooks.Open(CurrentProject.Path & "\Danh sach khach hang.xlt")
tb1 = "select * from tblKhach" ' tblKhach là tên table 1'
tb2 = "select * from tblchu" ' tblchu là tên table 2'
Set oSheet = oBook.Sheets("Danh Sach")
Set db = CurrentDb
' Chép dữ liệu từ table1 vào file Excel bắt đầu từ cột B dòng thứ 7'
Set rs1 = db.OpenRecordset(tb1, dbOpenSnapshot)
oSheet.Range("b7").CopyFromRecordset rs1 'b7: lla cot B dong thu 7'
' Chép dữ liệu từ table2 vào file Excel bắt đầu từ cột B dòng thứ 25'
Set rs2 = db.OpenRecordset(tb2, dbOpenSnapshot)
oSheet.Range("b25").CopyFromRecordset rs2 'b25: lla cot B dong thu 25'
' Xoa bien va giai phong bo nho dong thoi mo file Excel'
rs1.Close
rs2.Close
oApp.Visible = True
oApp.UserControl = True
db.Close
End Sub
Nếu muốn table 2 nạp vào sheet2 chẳng hạn thì thêm đoạn
Mã PHP:Set oSheet = oBook.Sheets("Sửa lại tên Sheet2")
Chèn vào dưới chữ : Chép dữ liệu từ table2 vào file Excel bắt đầu từ cột B dòng thứ 25
Ứng dụng: Ta có thể Export nhiều Table đến một file Excel theo mẫu dựng sẳn mà trong đó gồm nhiều mẫu báo cáo ( phần này sau khi làm xong Ứng dụng báo cáo thống kê số liệu mình sẽ post một số ảnh minh họa lên để chia sẽ cùng mọi người)
Nếu không hay xin chém nhẹ tay.
Chao bạn
cho mình hỏi nếu mình muốn xoá những dòng trống khi xuất dữ liệu ra file excel thì phải làm thế nào -
RE: Demo tổng hợp xuất Table, Query sang Excel có điều kiện ở vị trí nào cũng được
maidinhdan > 08-01-16, 05:30 PM
(08-01-16, 01:02 AM)duynghiep89 Đã viết: cho mình hỏi nếu mình muốn xoá những dòng trống khi xuất dữ liệu ra file excel thì phải làm thế nào
Điều kiện dòng trống ( tức là không có dữ liệu): Bạn thực hiện đưa ra điều kiện trong Query tại cột bạn muốn đặt điều kiện bằng chữ " Not isNull" tức là
Nếu cột A : có 10 dòng, trong đó chỉ có 5 dòng có dữ liệu, bạn gõ điều kiện là "Not isNull" hoặc Is not null nó sẽ hiển thi 5 dòng thôi.
Thân mến! -
RE: Demo tổng hợp xuất Table, Query sang Excel có điều kiện ở vị trí nào cũng được
duynghiep89 > 08-01-16, 09:19 PM
(08-01-16, 05:30 PM)maidinhdan Đã viết:
(08-01-16, 01:02 AM)duynghiep89 Đã viết: cho mình hỏi nếu mình muốn xoá những dòng trống khi xuất dữ liệu ra file excel thì phải làm thế nào
Điều kiện dòng trống ( tức là không có dữ liệu): Bạn thực hiện đưa ra điều kiện trong Query tại cột bạn muốn đặt điều kiện bằng chữ " Not isNull" tức là
Nếu cột A : có 10 dòng, trong đó chỉ có 5 dòng có dữ liệu, bạn gõ điều kiện là "Not isNull" hoặc Is not null nó sẽ hiển thi 5 dòng thôi.
Thân mến!
Chào bạn
Chắc tại mình giải thích không rõ, khi có một file excel mẫu vì không biết dữ liệu sẽ dài hay ngắn nên mình sẽ chừa số dòng trống rất nhiều, khi đổ dữ liệu đã xuất từ access trong mình muốn xóa từ dòng trống tới dòng total để form báo cáo sẽ đẹp hơn.... hihi... mình giải thích hơi khó hiểu... bạn tham khảo file đính kèm giúp mình nhé. Cảm ơn bạn nhiều
http://www.fshare.vn/file/H1EMPEKE1NYM -
RE: Demo tổng hợp xuất Table, Query sang Excel có điều kiện ở vị trí nào cũng được
maidinhdan > 08-01-16, 11:40 PM
(08-01-16, 09:19 PM)duynghiep89 Đã viết: Chào bạn
Chắc tại mình giải thích không rõ, khi có một file excel mẫu vì không biết dữ liệu sẽ dài hay ngắn nên mình sẽ chừa số dòng trống rất nhiều, khi đổ dữ liệu đã xuất từ access trong mình muốn xóa từ dòng trống tới dòng total để form báo cáo sẽ đẹp hơn.... hihi... mình giải thích hơi khó hiểu... bạn tham khảo file đính kèm giúp mình nhé. Cảm ơn bạn nhiều
http://www.fshare.vn/file/H1EMPEKE1NYM
file Excel 2007 không thể hỗ trợ, chỉ hỗ trợ Office 2003.
Thân mến! -
RE: Demo tổng hợp xuất Table, Query sang Excel có điều kiện ở vị trí nào cũng được
ongke0711 > 09-01-16, 12:35 AM
(08-01-16, 09:19 PM)duynghiep89 Đã viết:
(08-01-16, 05:30 PM)maidinhdan Đã viết:
(08-01-16, 01:02 AM)duynghiep89 Đã viết: cho mình hỏi nếu mình muốn xoá những dòng trống khi xuất dữ liệu ra file excel thì phải làm thế nào
Điều kiện dòng trống ( tức là không có dữ liệu): Bạn thực hiện đưa ra điều kiện trong Query tại cột bạn muốn đặt điều kiện bằng chữ " Not isNull" tức là
Nếu cột A : có 10 dòng, trong đó chỉ có 5 dòng có dữ liệu, bạn gõ điều kiện là "Not isNull" hoặc Is not null nó sẽ hiển thi 5 dòng thôi.
Thân mến!
Chào bạn
Chắc tại mình giải thích không rõ, khi có một file excel mẫu vì không biết dữ liệu sẽ dài hay ngắn nên mình sẽ chừa số dòng trống rất nhiều, khi đổ dữ liệu đã xuất từ access trong mình muốn xóa từ dòng trống tới dòng total để form báo cáo sẽ đẹp hơn.... hihi... mình giải thích hơi khó hiểu... bạn tham khảo file đính kèm giúp mình nhé. Cảm ơn bạn nhiều
http://www.fshare.vn/file/H1EMPEKE1NYM
Có một giải pháp cho trường hợp của bạn. Vi dụ: Dòng tiêu đề nằm bắt đầu ở ô A1. Dòng Total của bạn sẽ nằm cách 1 dòng là A3 và đã có sẳn công thức của bạn. Cách làm là:
- Đếm số recors trong table hoặc query cần xuất. Vd: intRowNo= rst.RecordCount
- Bắt đầu ở ô A2 sẽ insert số dòng = intRowNo. Xong
Bạn thêm dòng code này vô code demo của bác Xuân Thanh (trước dòng code chuyển dữ liệu).
Mã PHP:For i = 1 To intRowNo
Ws.Cells(2, 1).EntireRow.Insert
Next -
RE: Demo tổng hợp xuất Table, Query sang Excel có điều kiện ở vị trí nào cũng được
zinzin8x > 19-01-16, 10:57 PM
Bạn ơi cho mình hỏi giờ mình muốn xuất table ra excel nhưng mà phải đặt được tên tùy ý và lưu vào vị trí tùy ý thì làm thế nào? (file cel ko cần thiêt kê trươc). -
RE: Demo tổng hợp xuất Table, Query sang Excel có điều kiện ở vị trí nào cũng được
ongke0711 > 20-01-16, 01:59 PM
Một cách đơn giản nhất là bạn thay đổi cách thức mở file excel để lưu như trong file demo của bác maidinhdan. Đổi từ Ex.Workbooks.Open (TenFile) --> Ex.Workbooks.Add
Cách này chương trình chỉ mở file excel mới lên thôi, khi bạn đóng hoặc Save thì Excel sẽ hỏi đường dẫn và tên như cách truyền thống của Excel.
Lấy ví dụ xuất theo mẫu của bác Xuân Thanh (nút nhấn đầu tiên). Bạn tìm đoạn code:
Set Wb = Ex.Workbooks.Open(TenFile)
Set Ws = Wb.Worksheets ("Danh sach")
Đổi lại thành:
Set Wb = Ex.Workbooks.Add
Set Ws = Wb.Worksheets("Sheet1") -
RE: Demo tổng hợp xuất Table, Query sang Excel có điều kiện ở vị trí nào cũng được
jeck09nt > 20-10-16, 11:49 AM
Mình có đoạn code sau xuất ra file Excel theo mẫu nhưng không được :
Mã PHP:If StartDate <> "" And EndDate <> "" Then
Ngayphancong = Format(Ngayphancong, "dd-mmm-yyyy")
sCriteria = sCriteria & " AND qryTransferDataToExcel.Ngayphancong between #" & Format(StartDate, "dd-mmm-yyyy") _
& "# and #" & Format(EndDate, "dd-mmm-yyyy") & "#"
End If
Trường StartDate và EndDate Unbound trên form và được định dạng : dd-mmm-yyyy
Trường Ngayphancong thuộc qryTransferDataToExcel là ngày tự động lấy từ hệ thống dd/mm/yyy h:ss AM/PM
Nhờ các bạn xem giúp mình định dạng lại Ngayphancong = "dd-mmm-yyyy" sao vẫn không được ah !
Xin cám ơn ! -
RE: Demo tổng hợp xuất Table, Query sang Excel có điều kiện ở vị trí nào cũng được
conmeocon > 29-04-17, 05:16 PM
Nhờ giúp đỡ:mình muốn thêm công thức hàm Sum sau chổ STT để tính tổng luôn, có cách viết thêm như thế nào không?
Xin cám ơn -
RE: Demo tổng hợp xuất Table, Query sang Excel có điều kiện ở vị trí nào cũng được
vietnc > 15-04-19, 01:09 PM
Mình làm theo code của bác Xuân Thanh nhưng nó báo lỗi này là sao nhỉ, các thư viện mình đã khai báo đầy đủ:
https://drive.google.com/open?id=11Rz-bz...QVZV4wcJIz