[Help] VBA Export Access sang Excel (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

ngoctuyen1995

Thành viên hoạt động
Tham gia
25/4/17
Bài viết
196
Được thích
19
Giới tính
Nữ
Chào cả nhà GPEX!
Mong cả nhà giúp em một việc ạ!

Hiện tại em có một file Access gồm data và 02 Câu Query (Part 1, Part 2), em muốn dùng VBA xuất 02 câu Query này ra một File Excel có sẵn tên Template tại Sheet Logiccheck.... Vì Access của mình chỉ chứa tối đa 255 cột nên mới đầu khi import từ Excel vào Access em tách ra thành 02 Part.. nên mới có 02 câu Query.. sau khi dùng Query để check dữ liệu giờ em muốn dùng VBA để gôm 02 câu query lại thành 01 File Excel ạ...

Mong cả nhà giúp đỡ e ạ.! Cảm ơn cả nhà nhiều!
Do File access em không đính kèm được nên em chỉ đính kèm một file Excel thôi ạ
 

File đính kèm

Chào Thầy!..
Em không thể upload file lên diễn đàn được, nhờ Thầy vào đường dẫn này tải xuống giúp em nhé:
http://www.mediafire.com/file/3m85gixzbaqnlxb/LogicCheck.accdb
Trong file Access có 02 câu Query ______0Send Logic_Part1 và ______0Send Logic_Part2.. em muốn xuất 02 câu đó ạ...

Em cảm ơn Thầy! mong Thầy giúp đỡ!
 
Upvote 0
Tôi không hỏi dữ liệu của query. Bạn copy cái query text dán lên đây. Phải xem mới biết đại khái CSDL có cái gì
 
Upvote 0
Xin lỗi Thầy do em không hiểu ý,
Em gửi Thầy Query ạ
Do Query của em hơi phức tạp link với nhiều bảng nên dữ liệu hơi nặng, nên em coppy dữ liệu lên, Thầy coppy vào Access thành 02 Table và dùng Macro xuất ra giúp em nhé, rồi sau đó em sẽ tự chế biến ạ...

Mong Thầy giúp đỡ! Cảm ơn Thầy nhiều
 
Upvote 0
Bạn vào Access,
copy Table2 thành TableB
Vào TableB, đổi tên trường ResponseID thành ResponseID_B, và [Store Code] thành StoreCode_B
(xem chú thích bên dưới)

Bạn lập một cái query trong Access như vầy:

Select A.*, B.* From Table1 A
Outer Join TableB B On A.ResponseID = B.ResponseID_B And A.[Store Code] = B.StoreCode_B
-- dữ liệu của bạn chỉ có 3 dòng cho nên tôi khong thể nói cái ResponseID nó có duy nhất hay không, nếu nó duy nhất thì bạn có thể loại bỏ đoạn "And A.[Store Code] = B.StoreCode_B"
-- lệnh nói trên dùng Outer Join là vì tôi khong chắc mõi dòng bên table1 có tuonwg ứng với 1 dòng bên Table2 hay không. Nếu bạn có thể bảo đảm điều này thì dùng Inner Join

Cái query trên sẽ trộn dữ liệu 2 bảng cho bạn. Khi gọi nó lên, bạn Export vào CSV

Sau khi có file CSV rồi thì bạn mở file Excel lên, Import vào
Sau khi import, banjn có thể xóa 2 cột ResponseID_B và StoreCode_B

Tôi chỉ có thể hướng dẫn bạn cách làm tay. Nếu muốn code tự dộng thì bạn nên qua hộp CSDL để hỏi. Bên đó có nhiều người giỏi việc kết nối CSDL sẽ giúp được bạn.
Bạn có thể qua hộp ấy, mở môt thớt tiêu đề "Xin giúp code Import 2 tables từ Access sang file Excel". Nếu muốn, bạn cũng có có thể copy đường dẫn về thớt này.

Chú thích: sở dĩ phải làm vầy là vì lúc trộn bảng, các tên trường này sẽ chạm nhau
Thường thì người ta chọn trường trong lệnh Select. Nhưng bảng của bạn nhiều trường quá, kể ra dài thậm thượt
 
Upvote 0
Bạn vào Access,
copy Table2 thành TableB
Vào TableB, đổi tên trường ResponseID thành ResponseID_B, và [Store Code] thành StoreCode_B
(xem chú thích bên dưới)

Bạn lập một cái query trong Access như vầy:

Select A.*, B.* From Table1 A
Outer Join TableB B On A.ResponseID = B.ResponseID_B And A.[Store Code] = B.StoreCode_B
-- dữ liệu của bạn chỉ có 3 dòng cho nên tôi khong thể nói cái ResponseID nó có duy nhất hay không, nếu nó duy nhất thì bạn có thể loại bỏ đoạn "And A.[Store Code] = B.StoreCode_B"
-- lệnh nói trên dùng Outer Join là vì tôi khong chắc mõi dòng bên table1 có tuonwg ứng với 1 dòng bên Table2 hay không. Nếu bạn có thể bảo đảm điều này thì dùng Inner Join

Cái query trên sẽ trộn dữ liệu 2 bảng cho bạn. Khi gọi nó lên, bạn Export vào CSV

Sau khi có file CSV rồi thì bạn mở file Excel lên, Import vào
Sau khi import, banjn có thể xóa 2 cột ResponseID_B và StoreCode_B

Tôi chỉ có thể hướng dẫn bạn cách làm tay. Nếu muốn code tự dộng thì bạn nên qua hộp CSDL để hỏi. Bên đó có nhiều người giỏi việc kết nối CSDL sẽ giúp được bạn.
Bạn có thể qua hộp ấy, mở môt thớt tiêu đề "Xin giúp code Import 2 tables từ Access sang file Excel". Nếu muốn, bạn cũng có có thể copy đường dẫn về thớt này.

Chú thích: sở dĩ phải làm vầy là vì lúc trộn bảng, các tên trường này sẽ chạm nhau
Thường thì người ta chọn trường trong lệnh Select. Nhưng bảng của bạn nhiều trường quá, kể ra dài thậm thượt
cảm ơn Thầy đã giúp đỡ em ạ!
ResponseID và StoreCode là duy nhất ạ, và StoreCode là khoá chính của toàn bộ dữ liệu... Em chỉ muốn xuất 02 câu query đó ra thành 01 File excel thôi ạ. Access không hỗ trợ macro để xuất ra được hả Thầy? Bởi vì dữ liệu của em có gần tới 500 cột nên mới tách ra thành 02 Talble.. theo cách thông thường thì em chỉ cần coppy nối 02 Query cần xuất ra Excel và nối lại thôi... hiện tại em muốn dùng tự động để cho nó tự coppy ra luôn...

Em xin gửi lại File rút gọn ạ..!
Ý của em là tự Export 02 câu Query ra Excel (Template) và nối 02 câu lại với nhau như File Excel (Template) mẫu của em ạ..!
Nếu được mong Thầy giúp đỡ em ạ!
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom