Tổng hợp file .txt từ nhiều Folders vào file Excel

Liên hệ QC

baquang1984

Thành viên tiêu biểu
Tham gia
3/6/10
Bài viết
429
Được thích
44
Nghề nghiệp
Kỹ sư Lâm nghiệp
Em chào thầy, cô và các anh chị trên diễn đàn GPE
Do công việc của em cần tổng hợp nhiều file .txt có cấu trúc giống nhau từ các thành viên gửi về mỗi thành viên là một Folder. Do vậy nhờ thầy, cô và anh chị trên diễn đàn viết giúp em chương trình VBA để tổng hợp các file .txt này từ các Folder vào file Excel ạ
Yêu cầu của chương trình là khi chọn vào Buttom TỔNG HỢP chương trình sẽ cho phép chọn nhiều Folder chứa các file .txt cần tổng hợp, khi chọn xong chương trình tổng hợp theo yêu cầu sau:
Ở cột A "Tên Folder" chương trình sẽ ghi lần lượt tên Folder chứa file cần tổng hợp vào cột này khi tổng hợp
Ở cột B "Tên File" chương trình sẽ ghi lần lượt tên File chữa dữ liệu cần tổng hợp vào cột này khi tổng hợp
Ở cột C "Số TT", Cột D "X", Cột E "Y" chương trình tổng hợp và ghi dữ liệu có trong các file vào
Như file mẫu em gửi kèm ạ
Em cảm ơn thầy, cô và các anh chị trên diễn đàn nhiều ạ
 

File đính kèm

  • Hoi_GPE.rar
    19 KB · Đọc: 34
Upvote 0
Dùng tool được thì cố dùng đi bạn, chứ code cái này nhìn thì đơn giản nhưng cũng lòng vòng, dài dòng lắm.
Giờ tui đang "nười nắm nắm nuôn" nữa. Cái gì ngắn ngắn thì được, chứ dài quá thì hơi mệt ;)
 
Upvote 0
Với những trường hợp xử lý công việc thực tế cần ngay và yêu cầu nhiều thì nên chi tiền kiếm người làm, nhanh gọn.

Nếu ai quá rảnh rỗi thì mới có thời gian làm được, mà chờ những cái miễn phí thường rất lâu.
 
Upvote 0
Với những trường hợp xử lý công việc thực tế cần ngay và yêu cầu nhiều thì nên chi tiền kiếm người làm, nhanh gọn.

Nếu ai quá rảnh rỗi thì mới có thời gian làm được, mà chờ những cái miễn phí thường rất lâu.
Hiiii cảm ơn bác befaint em trước cũng có anh trên diễn đàn hay viết giúp và cũng trả kinh phí nhưng giờ anh đó bận quá không viết code nữa anh ạ nên chưa tìm được người viết giúp ạ. Nếu anh có ai giới thiệu em với. Cảm ơn anh nhiều
 
Upvote 0
Vì thấy phiên bản của bạn dùng được power query thì mình hướng dẫn như sau:
Vào Data tab/Get data/ From File/From Folder

Bạn chọn thư mục chứa các file text, nó sẽ list tất cả files bạn cần gộp, sau đó bạn tại combobox: Combine thì chọn Combine & Load
Chọn OK đến khi dữ liệu được fill, bạn sẽ thấy nó có các cột như file text và thêm 1 cột là file name
Bạn muốn thêm cột cho đường dẫn folder thì vào Query tab chọn Edit, 1 cửa sổ power query hiện ra
Bạn vào Advance Edit, xem và thêm vào sau chỗ Source.Name bằng "Folder Path" là được. Lưu ý là làm theo cụm giống source.name nhé
 
Upvote 0
Vì thấy phiên bản của bạn dùng được power query thì mình hướng dẫn như sau:
Vào Data tab/Get data/ From File/From Folder

Bạn chọn thư mục chứa các file text, nó sẽ list tất cả files bạn cần gộp, sau đó bạn tại combobox: Combine thì chọn Combine & Load
Chọn OK đến khi dữ liệu được fill, bạn sẽ thấy nó có các cột như file text và thêm 1 cột là file name
Bạn muốn thêm cột cho đường dẫn folder thì vào Query tab chọn Edit, 1 cửa sổ power query hiện ra
Bạn vào Advance Edit, xem và thêm vào sau chỗ Source.Name bằng "Folder Path" là được. Lưu ý là làm theo cụm giống source.name nhé
Tuyệt vời quá anh ạ hôm qua xem anh làm em thấy công tác tổng hợp dữ liệu của em không còn là vấn đề khó khăn nữa. Chúc anh sức khỏe nhé
Nếu được anh có thể cho em xin đia chỉ Mail của anh hoặc facebook để gặp vấn đề gì xin phép được làm phiền anh
Em cảm ơn anh!
 
Upvote 0
Tuyệt vời quá anh ạ hôm qua xem anh làm em thấy công tác tổng hợp dữ liệu của em không còn là vấn đề khó khăn nữa. Chúc anh sức khỏe nhé
Nếu được anh có thể cho em xin đia chỉ Mail của anh hoặc facebook để gặp vấn đề gì xin phép được làm phiền anh
Em cảm ơn anh!
....
 
Lần chỉnh sửa cuối:
Upvote 0
Tuyệt vời quá anh ạ hôm qua xem anh làm em thấy công tác tổng hợp dữ liệu của em không còn là vấn đề khó khăn nữa. Chúc anh sức khỏe nhé
Nếu được anh có thể cho em xin đia chỉ Mail của anh hoặc facebook để gặp vấn đề gì xin phép được làm phiền anh
Em cảm ơn anh!

Với Power query thì việc tổng họp dữ liệu không thành vấn đề, bài trước mình đã nói với bạn chỉ cần tìm hiểu công cụ này sẽ có rất nhiều thứ không cần VBA hỗ trợ. Nếu muốn thành thạo Power query thì phải tìm hiểu thêm công thức xử lý liệu còn gọi là Power query M Function, khi thành thạo tôi đảm bảo với bạn tất cả những thứ VBA làm được thì Power Query làm được, vì chúng xin ra là xử lý dữ liệu thô thành dữ liệu sạch. Khi muốn dữ liệu sạch thành những con số biết nói chuyện thì dùng Power Pivot + Power View, còn muốn sinh động hơn nữa thì dùng Power BI

Còn file của mình gửi máy bạn không chạy được là do chưa set up vài tuỳ chọn, mình có ultra vào máy bạn hôm qua xem lại đã làm thành công, đính chính lại mình vs quanluu1989 là 2 người khác nhau.

Xin cảm ơn
 
Upvote 0
Hiiii cảm ơn bác befaint em trước cũng có anh trên diễn đàn hay viết giúp và cũng trả kinh phí nhưng giờ anh đó bận quá không viết code nữa anh ạ nên chưa tìm được người viết giúp ạ. Nếu anh có ai giới thiệu em với. Cảm ơn anh nhiều
Bạn vào chuyên mục "Thành viên giúp nhau.." đăng bài "Cần tìm người làm abc (gì đó) và có trả phí", rồi úp yêu cầu lên. Đảm bảo có người làm cho bạn liền.

Query như trên đâu có làm được cái đoạn khung đỏ đâu.

221448
 
Upvote 0
Kệ, dùng tính năng có sẵn của Excel thì chỉ mất công click mệt rồi nghỉ, rồi click tiếp thôi :) Nếu không ra như ý thì cũng đành chịu, đâu có can thiệp vào tính năng đó mà sữa được.
 
Upvote 0
Bạn vào chuyên mục "Thành viên giúp nhau.." đăng bài "Cần tìm người làm abc (gì đó) và có trả phí", rồi úp yêu cầu lên. Đảm bảo có người làm cho bạn liền.

Query như trên đâu có làm được cái đoạn khung đỏ đâu.

View attachment 221448
Ban đầu mình chọn thư mục cha, sau đó vào phần filter có thể chọn những thư mục cần gộp dữ liệu. Nói chung biết được power query sẽ rất hay.
 
Upvote 0
Với Power query thì việc tổng họp dữ liệu không thành vấn đề, bài trước mình đã nói với bạn chỉ cần tìm hiểu công cụ này sẽ có rất nhiều thứ không cần VBA hỗ trợ. Nếu muốn thành thạo Power query thì phải tìm hiểu thêm công thức xử lý liệu còn gọi là Power query M Function, khi thành thạo tôi đảm bảo với bạn tất cả những thứ VBA làm được thì Power Query làm được, vì chúng xin ra là xử lý dữ liệu thô thành dữ liệu sạch. Khi muốn dữ liệu sạch thành những con số biết nói chuyện thì dùng Power Pivot + Power View, còn muốn sinh động hơn nữa thì dùng Power BI

Còn file của mình gửi máy bạn không chạy được là do chưa set up vài tuỳ chọn, mình có ultra vào máy bạn hôm qua xem lại đã làm thành công, đính chính lại mình vs quanluu1989 là 2 người khác nhau.

Xin cảm ơn
Xin lỗi anh doanlong49 nhé nếu có thể anh cho em xin thông tin liên hệ nhé
Em cảm ơn anh
Bài đã được tự động gộp:

Bạn vào chuyên mục "Thành viên giúp nhau.." đăng bài "Cần tìm người làm abc (gì đó) và có trả phí", rồi úp yêu cầu lên. Đảm bảo có người làm cho bạn liền.

Query như trên đâu có làm được cái đoạn khung đỏ đâu.

View attachment 221448
Dùng Query cái phần đánh dấu màu đỏ của anh làm tốt mà em đã được anh doanlong49 truy cập vào máy hướng dẫn và cho ra kết quả như em nêu trong yêu cầu mà
Em cảm ơn anh ạ
 
Upvote 0
Chỉ 1 câu, chọn multi folder, mà bữa giờ em đào từ shlwapi.dll, shell32.dll tới msi.dll ra, mà không ra 1 hộp dialog nào cho chọn multi folder.
Viết C++, MFC thì em cho ra chục cái cũng được. Khổ. port qua DLL cho Excel, VBA à.
 
Upvote 0
Hay xài Fso duyệt đệ quy đi ... có bao nhiêu Folder con cháu chi đó nó lấy hết là xong có điều phát sinh linh tinh trong đó :p ;)
 
Upvote 0
Hì hì, cho user chọn nhiều folder = cách loop, chọn, OK thì dễ rồi. Ý tôi là chọn như Windows Explorer đó.
Bài đã được tự động gộp:
 
Lần chỉnh sửa cuối:
Upvote 0
Uhm, nó cũng dễ thôi. Nhưng đặt phương diện user hay người dùng code của mình thôi.
Bài đã được tự động gộp:

Code MFC/C++ từ hồi xưa lắc xưa lơ mình đã có rồi
 
Upvote 0
Upvote 0
OH VÃI THẾ TƯỞNG VBA .... HÓNG HỤT :p
MÀ C LẠI VIẾT *.DLL HẢ
 
Upvote 0
Web KT
Back
Top Bottom