Trộn dữ liệu từ Excel sang Word mở rộng (phiên bản ongke0711)

Liên hệ QC

ongke0711

Thành viên gắn bó
Tham gia
7/9/06
Bài viết
2,224
Được thích
2,940
Giới tính
Nam
(Xin phép được tách bài từ bài post của bác Maika8008 (Link) để tránh lẫn lộn khi trao đổi và do cũng tài lanh xen vào, gây loãng bài của bác ấy).


Trộn dữ liệu từ Excel sang Word
-------------------------------------------------------------------------------------------

Lấy cảm hứng từ ý tưởng và file của bác Maika8008, tôi cũng thiết kế một phiên bản khác cho việc Trộn dữ liệu từ Excel sang Word.
Phiên bản này tổng hợp các nhu cầu thực tế của người dùng đã trao đổi trong chủ để này, có thể chưa đầy đủ nhưng cũng đáp ứng cơ bản cho công việc.

* Các chức năng:
- Tùy chọn trộn dữ liệu: Một (hoặc nhiều) đối tượng cho một (hoặc nhiều) văn bản.
- Tự động tạo tiêu đề cột riêng, không ảnh hưởng đến thiết kế bảng.
- Không cần cố định vị trí (dòng, cột ) của dữ liệu cần trộn vì dùng tham chiếu qua Table name.
- Chỉ lấy những dòng dữ liệu sau khi dùng Filter trong bảng dữ liệu.
- Khắc phục lỗi khi trộn đoạn văn bản nhiều hơn 255 ký tự.
- Trộn có kèm luôn file hình ảnh (.jpg, .png, .bmp).
- Trộn các Symbols (font Wingdings, Marlett, Webdings)
- Xuất file dạng .Docx, .PDF


>> Cập nhật ngày 11/10/2023:
- Trộn bảng biểu Excel vào Word Table, giữ nguyên định dạng thiết kế trong Excel.

Thiết kế cũng chưa bẫy lỗi gì nhiều, chắc chắn sẽ phát sinh lỗi khi thao tác, các bạn chạy kiểm tra thử nhé.
Tôi cũng đã thử dùng kết hợp tính năng Mail Merger có sẵn trong Word + VBA cho các tùy chọn nhưng tốc độ thực thi cũng không bằng một góc so với việc dùng thẳng Mail Merge (*) trong Word vì dù gì thì nó cũng đã qua code VBA để gọi tính năng Merge.

(*) Dùng Mail Merge trong Word rất nhanh nhưng nó chỉ đáp ứng tùy chọn cơ bản, đó là lý do có nhiều công cụ viết mở rộng thêm cho tính năng này.

Mã:
wdocSource.MailMerge.OpenDataSource...






3qgQKVn.png






Hướng dẫn sử dụng trong video.


* Đã cập nhật bẫy lỗi và chuyển sang kết nối muộn (Late binding) với Word để tránh lỗi giữa các phiên bản Office.

Link file (full code): https://www.mediafire.com/file/8fc086iogo32cie/MergeDataExcel2Word.zip/file
 
Lần chỉnh sửa cuối:
(Xin phép được tách bài từ bài post của bác Maika8008 (Link) để tránh lẫn lộn khi trao đổi và do cũng tài lanh xen vào, gây loãng bài của bác ấy).


Trộn dữ liệu từ Excel sang Word
-------------------------------------------------------------------------------------------

Lấy cảm hứng từ ý tưởng và file của bác Maika8008, tôi cũng thiết kế một phiên bản khác cho việc Trộn dữ liệu từ Excel sang Word.
Phiên bản này tổng hợp các nhu cầu thực tế của người dùng đã trao đổi trong chủ để này, có thể chưa đầy đủ nhưng cũng đáp ứng cơ bản cho công việc.

* Các chức năng:
- Tùy chọn trộn dữ liệu: Một (hoặc nhiều) đối tượng cho một (hoặc nhiều) văn bản.
- Tự động tạo tiêu đề cột riêng, không ảnh hưởng đến thiết kế bảng.
- Không cần cố định vị trí (dòng, cột ) của dữ liệu cần trộn vì dùng tham chiếu qua Table name.
- Chỉ lấy những dòng dữ liệu sau khi dùng Filter trong bảng dữ liệu.
- Khắc phục lỗi khi trộn đoạn văn bản nhiều hơn 255 ký tự.
- Trộn có kèm luôn file hình ảnh (.jpg, .png, .bmp).
- Xuất file dạng .Docx, .PDF


Thiết kế cũng chưa bẫy lỗi gì nhiều, chắc chắn sẽ phát sinh lỗi khi thao tác, các bạn chạy kiểm tra thử nhé.
Tôi cũng đã thử dùng kết hợp tính năng Mail Merger có sẵn trong Word + VBA cho các tùy chọn nhưng tốc độ thực thi cũng không bằng một góc so với việc dùng thẳng Mail Merge (*) trong Word vì dù gì thì nó cũng đã qua code VBA để gọi tính năng Merge.

(*) Dùng Mail Merge trong Word rất nhanh nhưng nó chỉ đáp ứng tùy chọn cơ bản, đó là lý do có nhiều công cụ viết mở rộng thêm cho tính năng này.

Mã:
wdocSource.MailMerge.OpenDataSource...

Y9SHro3.png


e7fmRBR.png


Hướng dẫn sử dụng trong video.


* Đã cập nhật bẫy lỗi và chuyển sang kết nối muộn (Late binding) với Word để tránh lỗi giữa các phiên bản Office.

Link file (full code): https://www.mediafire.com/file/8fc086iogo32cie/MergeDataExcel2Word.zip/file
Cảm ơn bạn Chủ Topic rất nhiều nhé
 
Upvote 0
Nếu ma có tùy chọn bản dữ liệu trong excel qua thì hay nhi, như là có 1 trường dữ liệu là bản trong excel đã đc đặt tên or quét bản
Bài đã được tự động gộp:

dạ, xin lỗi chắc em diễn đạt chưa tốt ạ, ý em là ở bảng excel mình đang để dạng dd/mm/yyyy, muốn ra bản word nó hiện dạng ngày dd, tháng mm, năm yyyy.
nếu mailings thì em biết, nhưng theo mẫu bác ongke0711 thì em chưa làm được ạ.
Đơn giản không có ji khó hết, bạn chèn thêm cột và cho code vào để nó đọc cái ngày dd/mm/yy của bạn thành ngày tháng năm, rồi chèn dữ liệu này vào file bạn.
 
Lần chỉnh sửa cuối:
Upvote 0
Cái này có phần hay hơn ở chổ giao diện cho người dùng, nhưng bác lại bỏ mất một tính năng quan trọng trong file gốc là tạo ra thư mục lấy tên cột A để đặt tên, còn của bác lại lấy tên cột a lam trên file có đuôi kèm theo do đó xuất file lúc tìm hơi khó khăn xíu, bác bổ sung lại cách tạo folder khi chọn nh file là đẹp
 
Upvote 0
Cái này có phần hay hơn ở chổ giao diện cho người dùng, nhưng bác lại bỏ mất một tính năng quan trọng trong file gốc là tạo ra thư mục lấy tên cột A để đặt tên, còn của bác lại lấy tên cột a lam trên file có đuôi kèm theo do đó xuất file lúc tìm hơi khó khăn xíu, bác bổ sung lại cách tạo folder khi chọn nh file là đẹp
File gốc là file nào bạn? Tính năng quan trọng theo cách nghĩ của bạn thôi chứ không phải của chung nhé. Xem lại hướng dẫn sử dụng đi rồi phát biểu nhé.
 
Upvote 0
(Xin phép được tách bài từ bài post của bác Maika8008 (Link) để tránh lẫn lộn khi trao đổi và do cũng tài lanh xen vào, gây loãng bài của bác ấy).


Trộn dữ liệu từ Excel sang Word
-------------------------------------------------------------------------------------------

Lấy cảm hứng từ ý tưởng và file của bác Maika8008, tôi cũng thiết kế một phiên bản khác cho việc Trộn dữ liệu từ Excel sang Word.
Phiên bản này tổng hợp các nhu cầu thực tế của người dùng đã trao đổi trong chủ để này, có thể chưa đầy đủ nhưng cũng đáp ứng cơ bản cho công việc.

* Các chức năng:
- Tùy chọn trộn dữ liệu: Một (hoặc nhiều) đối tượng cho một (hoặc nhiều) văn bản.
- Tự động tạo tiêu đề cột riêng, không ảnh hưởng đến thiết kế bảng.
- Không cần cố định vị trí (dòng, cột ) của dữ liệu cần trộn vì dùng tham chiếu qua Table name.
- Chỉ lấy những dòng dữ liệu sau khi dùng Filter trong bảng dữ liệu.
- Khắc phục lỗi khi trộn đoạn văn bản nhiều hơn 255 ký tự.
- Trộn có kèm luôn file hình ảnh (.jpg, .png, .bmp).
- Xuất file dạng .Docx, .PDF


Thiết kế cũng chưa bẫy lỗi gì nhiều, chắc chắn sẽ phát sinh lỗi khi thao tác, các bạn chạy kiểm tra thử nhé.
Tôi cũng đã thử dùng kết hợp tính năng Mail Merger có sẵn trong Word + VBA cho các tùy chọn nhưng tốc độ thực thi cũng không bằng một góc so với việc dùng thẳng Mail Merge (*) trong Word vì dù gì thì nó cũng đã qua code VBA để gọi tính năng Merge.

(*) Dùng Mail Merge trong Word rất nhanh nhưng nó chỉ đáp ứng tùy chọn cơ bản, đó là lý do có nhiều công cụ viết mở rộng thêm cho tính năng này.

Mã:
wdocSource.MailMerge.OpenDataSource...

Y9SHro3.png


e7fmRBR.png


Hướng dẫn sử dụng trong video.


* Đã cập nhật bẫy lỗi và chuyển sang kết nối muộn (Late binding) với Word để tránh lỗi giữa các phiên bản Office.

Link file (full code): https://www.mediafire.com/file/8fc086iogo32cie/MergeDataExcel2Word.zip/file
Mình muốn dữ liệu trong excel theo kiểu hàng dọc thì mình làm thế nào ạ
 
Upvote 0
Bác có thể thêm tính năng tạo folder con khi chọn ( lưu các file chạy vào folder đó) tên folde lấy từ cột nào đó ví dụ Cột A được không bác,
 
Upvote 0
file bị hỏng hay sao mà mình chạy thì được nhưng khi mở lên thì dữ liệu không được trộn ra nguyên cái file gốc, mình đã cài [] vào tiêu đề
 
Upvote 0
file bị hỏng hay sao mà mình chạy thì được nhưng khi mở lên thì dữ liệu không được trộn ra nguyên cái file gốc, mình đã cài [] vào tiêu đề
Bạn tải lại file ở bài #1.
- Dòng tiêu đề chỉ cần copy dán lên dòng 1, bấm nút lệnh thì code tự thêm dấu ngoặc vuông [...].
- Tôi không hiểu câu "... dữ liệu không được trộn ra nguyên cái file gốc"?
 
Upvote 0
Bạn tải lại file ở bài #1.
- Dòng tiêu đề chỉ cần copy dán lên dòng 1, bấm nút lệnh thì code tự thêm dấu ngoặc vuông [...].
- Tôi không hiểu câu "... dữ liệu không được trộn ra nguyên cái file gốc"?
lỗi là do mình không copy lên dòng số 1, nhưng mình vẫn không chạy được, bạn xem giúp đây là lỗi gì với. kèm theo ảnh.001.png02.png
 
Upvote 0
Mình lấy bản hôm qua tải về, thì đây là kết quả sau khi trộn., nó vẫn ra y nguyên cái file gốc chứ chưa được trộn.
03.png04.png
Bài đã được tự động gộp:

có thể là file name ở đâu đó bị lỗi, mình nghĩ là cái forms đang bị lỗi tên gì đó.
005.png
 
Lần chỉnh sửa cuối:
Upvote 0
Mình lấy bản hôm qua tải về, thì đây là kết quả sau khi trộn., nó vẫn ra y nguyên cái file gốc chứ chưa được trộn.
View attachment 295150View attachment 295151
Bài đã được tự động gộp:

có thể là file name ở đâu đó bị lỗi, mình nghĩ là cái forms đang bị lỗi tên gì đó.
View attachment 295152
Bác copy file về máy, đừng để trên dropbox nữa xem có được không
 
Upvote 0
Mình lấy bản hôm qua tải về, thì đây là kết quả sau khi trộn., nó vẫn ra y nguyên cái file gốc chứ chưa được trộn.

Bài đã được tự động gộp:

có thể là file name ở đâu đó bị lỗi, mình nghĩ là cái forms đang bị lỗi tên gì đó.

Bạn dùng file này xem còn lỗi 52 nữa không. Copy vô cùng thư mục.
Tôi chuyển sang Office 2013 32bit.
 

File đính kèm

  • MergeDataExcel2Word.xlsb
    45.6 KB · Đọc: 11
Upvote 0
(Xin phép được tách bài từ bài post của bác Maika8008 (Link) để tránh lẫn lộn khi trao đổi và do cũng tài lanh xen vào, gây loãng bài của bác ấy).


Trộn dữ liệu từ Excel sang Word
-------------------------------------------------------------------------------------------

Lấy cảm hứng từ ý tưởng và file của bác Maika8008, tôi cũng thiết kế một phiên bản khác cho việc Trộn dữ liệu từ Excel sang Word.
Phiên bản này tổng hợp các nhu cầu thực tế của người dùng đã trao đổi trong chủ để này, có thể chưa đầy đủ nhưng cũng đáp ứng cơ bản cho công việc.

* Các chức năng:
- Tùy chọn trộn dữ liệu: Một (hoặc nhiều) đối tượng cho một (hoặc nhiều) văn bản.
- Tự động tạo tiêu đề cột riêng, không ảnh hưởng đến thiết kế bảng.
- Không cần cố định vị trí (dòng, cột ) của dữ liệu cần trộn vì dùng tham chiếu qua Table name.
- Chỉ lấy những dòng dữ liệu sau khi dùng Filter trong bảng dữ liệu.
- Khắc phục lỗi khi trộn đoạn văn bản nhiều hơn 255 ký tự.
- Trộn có kèm luôn file hình ảnh (.jpg, .png, .bmp).
- Xuất file dạng .Docx, .PDF


Thiết kế cũng chưa bẫy lỗi gì nhiều, chắc chắn sẽ phát sinh lỗi khi thao tác, các bạn chạy kiểm tra thử nhé.
Tôi cũng đã thử dùng kết hợp tính năng Mail Merger có sẵn trong Word + VBA cho các tùy chọn nhưng tốc độ thực thi cũng không bằng một góc so với việc dùng thẳng Mail Merge (*) trong Word vì dù gì thì nó cũng đã qua code VBA để gọi tính năng Merge.

(*) Dùng Mail Merge trong Word rất nhanh nhưng nó chỉ đáp ứng tùy chọn cơ bản, đó là lý do có nhiều công cụ viết mở rộng thêm cho tính năng này.

Mã:
wdocSource.MailMerge.OpenDataSource...

Y9SHro3.png


e7fmRBR.png


Hướng dẫn sử dụng trong video.


* Đã cập nhật bẫy lỗi và chuyển sang kết nối muộn (Late binding) với Word để tránh lỗi giữa các phiên bản Office.

Link file (full code): https://www.mediafire.com/file/8fc086iogo32cie/MergeDataExcel2Word.zip/file
hay là code của bản này 32 bít ko dùng đc cho 64 nhỉ? máy mng dùng đc sao máy mình ko dùng đc, thế mới là cái vấn đề khó hiểu.
 
Upvote 0
hay là code của bản này 32 bít ko dùng đc cho 64 nhỉ? máy mng dùng đc sao máy mình ko dùng đc, thế mới là cái vấn đề khó hiểu.
Code dùng cho cả 32 và 64 bit.
Đơn giản là giờ bạn tạo file Excel mới từ máy bạn, copy toàn bộ code, Form, Sheet qua, gán lại macro rồi chạy thử là biết liền.
 
Upvote 0
Web KT

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

Back
Top Bottom