In thẻ NV khi nhập Mã NV (1 người xem)

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

♠AceBich♠

Thành viên chính thức
Tham gia
17/11/09
Bài viết
64
Được thích
18
Chào các anh chị trong diễn đàn!

Hiện tại mình có một file thẻ nhân viên, nếu làm thủ công bằng photoshop thì chỉ in được từng nhân viên một. Nay do nhu cầu cần in lại tất cả thẻ NV nên mình nhờ các anh chị giúp mình cách làm nhanh nhất và hiệu quả nhất.

Yêu cầu:
- Chèn text box vào phần mã NV, tên NV, chức vụ..
- Khi nhập mã NV vào thì tự động lấy họ tên , hình ảnh, chức vụ...
Chân thành cám ơn!!!
 

File đính kèm

Lần chỉnh sửa cuối:
Bạn tham khảo tiện ích in Form hàng loạt tại chữ ký của tôi. Trong file ví dụ có ví dụ về thẻ nhân viên, bạn tùy biến cho dữ liệu của bạn nhé.
 
Cho mình hỏi phần form của bạn mình muốn chèn hình theo mẫu của công ty, tăng giảm chiều dài, rộng, mà vẫn đánh được mã NV thì phải làm sao?!
thx bạn!!!
 
Cho mình hỏi phần form của bạn mình muốn chèn hình theo mẫu của công ty, tăng giảm chiều dài, rộng, mà vẫn đánh được mã NV thì phải làm sao?!
thx bạn!!!
Bạn có thể làm Form tùy ý theo mẫu của bạn, chỉ cần khai báo chính xác. Mình đã đưa một số link ứng dụng tiện ích bạn nên đọc các hướng dẫn và các ví dụ đó để biết cách dùng

Thân!
 
1/Số lượng thẻ khoảng bao nhiêu, nếu ít thì làm tay cho nhanh.
2/Bạn đưa thẻ mẫu thì OK, nhưng bạn phải đưa thẻ chưa in lên chứ làm sao xoá được tên số thẻ trên mẫu thẻ (Tức là thẻ trắng chỉ có nền và tên công ty thôi)
3/Nhập danh sách khoảng 10 đến 20 người để Test chuyển trang chứ ít quá sao làm được.
 
1/Số lượng thẻ khoảng bao nhiêu, nếu ít thì làm tay cho nhanh.
2/Bạn đưa thẻ mẫu thì OK, nhưng bạn phải đưa thẻ chưa in lên chứ làm sao xoá được tên số thẻ trên mẫu thẻ (Tức là thẻ trắng chỉ có nền và tên công ty thôi)
3/Nhập danh sách khoảng 10 đến 20 người để Test chuyển trang chứ ít quá sao làm được.

- Số lượng thẻ Nhân viên in lại toàn bộ khoảng 800 NV.
- Mẫu thẻ thì mình scan ra và làm bằng photoshop, phần tên NV, mã NV, chức vụ nếu làm bằng PTS thì rất mất thời gian nên mình định là chuyển sang excel code sao cho nhập mã NV thì ra kết quả như hình thẻ mẫu. Thẻ NV bên mình là thẻ của Ngành (PC64) quy định mình không thể để trắng được mong các bạn thông cảm!!!
chân thành cám ơn!
 
Bạn có thể làm Form tùy ý theo mẫu của bạn, chỉ cần khai báo chính xác. Mình đã đưa một số link ứng dụng tiện ích bạn nên đọc các hướng dẫn và các ví dụ đó để biết cách dùng

Thân!

Form của bạn mình chạy thử thì ok rồi, nhưng bên cty mình mẫu thẻ phải là NỀN VÂN HOA theo quy định, bạn có thể chỉnh hoặc chèn mẫu thẻ vào giúp form được không?!
Cám ơn bạn trước!
 
- Số lượng thẻ Nhân viên in lại toàn bộ khoảng 800 NV.
- Mẫu thẻ thì mình scan ra và làm bằng photoshop, phần tên NV, mã NV, chức vụ nếu làm bằng PTS thì rất mất thời gian nên mình định là chuyển sang excel code sao cho nhập mã NV thì ra kết quả như hình thẻ mẫu. Thẻ NV bên mình là thẻ của Ngành (PC64) quy định mình không thể để trắng được mong các bạn thông cảm!!!
chân thành cám ơn!

Vậy thì đề nghị của bạn mâu thuẫn mất rồi, không có mẫu Hoa văn thì sao làm nổi vì mẫu tiêu chuẩn. Nếu có làm được thì hoá ra cùng nhau làm giả mạo giấy tờ tuỳ thân sao?
Trường hợp này chắc phải phụ thuộc vào sự khéo tay của bạn (Lưu ý đừng scan rồi dùng photoshop chỉnh sửa, in ấn nha vì đó là làm giả)
Bạn phải dùng tờ mẫu in đã đặt ìn và căn thả để in thôi, giống như in giấy khen ấy (Mẫu đặt in thường có dấu bảo mật để xác định thật giả khi có chuyện. Như bảo mật hoá đơn mà đơn vị in giao cho đơn vị đặt in ). Thông thường 1 tờ sẽ có nhiều thẻ, bạn nên dùng Textbox để chỉnh thả cho thật chính xác và dùng VBA để set dữ liệu và điều khiển in.
 
Lần chỉnh sửa cuối:
Vậy thì đề nghị của bạn mâu thuẫn mất rồi, không có mẫu Hoa văn thì sao làm nổi vì mẫu tiêu chuẩn. Nếu có làm được thì hoá ra cùng nhau làm giả mạo giấy tờ tuỳ thân sao?
Trường hợp này chắc phải phụ thuộc vào sự khéo tay của bạn (Lưu ý đừng scan rồi dùng photoshop chỉnh sửa, in ấn nha vì đó là làm giả)
Bạn phải dùng tờ mẫu in đã đặt ìn và căn thả để in thôi, giống như in giấy khen ấy (Mẫu đặt in thường có dấu bảo mật để xác định thật giả khi có chuyện. Như bảo mật hoá đơn mà đơn vị in giao cho đơn vị đặt in ). Thông thường 1 tờ sẽ có nhiều thẻ, bạn nên dùng Textbox để chỉnh thả cho thật chính xác và dùng VBA để set dữ liệu và điều khiển in.

Trước tiên mình cảm ơn bạn đã quan tâm tới topic của mình!!! thực lòng mình không biết phải diễn tả như thế nào cho bạn hiểu, đại khái là mẫu in hoa văn của mình phải nằm trong thẻ, sau khi mình nhập mã số vào thì ra họ tên... sau đó là in, rồi trình xếp ký đóng dấu (Thật giả chỗ Người ký - đóng con dấu này!!! ).
Mình đang làm bằng mail merge nhưng không biết cách đưa vào excel nên mới định tìm tòi học hỏi thêm, có gì các bạn chỉ giúp.!!!
thx!
 
Như chú Sealand đã nói tại bài #5, bạn muốn có kết quả thì bạn đưa mẫu thẻ trắng (chuẩn) không có tên, chức vụ, code... lên mọi người sẽ giúp.

Còn nếu bạn sử dụng phuơng pháp của tôi đề nghị thì bạn có thể làm theo 2 bước
1/ Bước 1: In form thẻ trắng (chỉ bao gồm hoa văn)
2/ Bước 2 : In các thông số trên form đã in tại bước 1.
Tất nhiên bạn sẽ phải mất thời gian để căn chỉnh sao cho vừa khuôn.
 
Như chú Sealand đã nói tại bài #5, bạn muốn có kết quả thì bạn đưa mẫu thẻ trắng (chuẩn) không có tên, chức vụ, code... lên mọi người sẽ giúp.

Còn nếu bạn sử dụng phuơng pháp của tôi đề nghị thì bạn có thể làm theo 2 bước
1/ Bước 1: In form thẻ trắng (chỉ bao gồm hoa văn)
2/ Bước 2 : In các thông số trên form đã in tại bước 1.
Tất nhiên bạn sẽ phải mất thời gian để căn chỉnh sao cho vừa khuôn.

Mình không biết về VBA cũng như form... nên mới nhờ các Cao thủ code GPE trợ giúp và tư vấn thêm cho công việc được thuận tiện tự động hóa. Như bạn nói thì mẫu của mình điều chỉnh thế nào bạn tư vấn thêm cho mình.

Bước 1: Mẫu form thẻ của mình là một hình ảnh hoa văn 9x6cm
Bước 2: Như bạn nói thì mình đã thử tìm trên mạng thì hình như excel không hỗ trợ hình ảnh chèn text box họ tên, chức vụ...
 
Có thể bạn chưa tiếp xúc với VBA nhiều nên chưa hiểu hết sức mạnh của nó, bạn cũng chưa hiểu vì sao mọi người yêu cầu bạn form mẫu...
Nhưng thôi, dần rồi bạn sẽ hiểu. Tôi sẽ hướng dẫn bạn làm theo hướng trên

- Bước 1: Bạn in Form của bạn ra 1 tờ giấy A4, bạn có thể sắp xếp sao cho phù hợp có thể in 10, 16, 20 thẻ cho vừa tờ A4
- Bước 2: bạn đã lập được form trên Excel rồi giờ chỉ căn sao cho chữ nó vừa các vị trí trên form => Bạn mang tờ giấy A4 đã in ở bước 1 mang sang bước 2 để in đè lên 1 lần nữa

=> Căn chỉnh vài lần chắc cũng tạm ổn.
 
Nếu bạn đảm bảo việc ấy mình hướng dẫn bạn 1 cách.
Bạn xem file nha. Khi in thật dùng máy in màu là OK (Nếu không có ta ra ngoài thuê in cũng đươc)
Bạn Down về giải nén ra ổ đĩa rồi chạy thử file , đùng thay đổi cấu trúc thư mục để tìm đuwocj ảnh.
Bạn thấy đấy, vì không có thẻ trắng mà mình không in trực tiếp trên nền (Textbox không có nền được vì nó lộ chữ cũ như mẫu thẻ thứ 4)
 

File đính kèm

Lần chỉnh sửa cuối:
Nếu bạn đảm bảo việc ấy mình hướng dẫn bạn 1 cách.
Bạn xem file nha. Khi in thật dùng máy in màu là OK (Nếu không có ta ra ngoài thuê in cũng đươc)
Bạn Down về giải nén ra ổ đĩa rồi chạy thử file , đùng thay đổi cấu trúc thư mục để tìm đuwocj ảnh.
Bạn thấy đấy, vì không có thẻ trắng mà mình không in trực tiếp trên nền (Textbox không có nền được vì nó lộ chữ cũ như mẫu thẻ thứ 4)

Trước tiên cho mình xin gửi lời cám ơn bạn đã cho mình xem mẫu thẻ gần giống với yêu cầu của mình để mình thử mày mò chỉnh sửa lại xem có đạt yêu cầu không, nếu không được nhờ bạn giúp tiếp.

thx
 
Lần chỉnh sửa cuối:
Đây là File theo hoa văn của Cty bạn.(Luu ý: Mình Modify nha)
Bạn chép thư mục ảnh mình gửi ở bài #13 vào trong thư mục IN THE NV2 để Test
 

File đính kèm

Lần chỉnh sửa cuối:
Đây là File theo hoa văn của Cty bạn.(Luu ý: Mình Modify nha)
Bạn chép thư mục ảnh mình gửi ở bài #13 vào trong thư mục IN THE NV2 để Test

Một lần nữa xin được cám ơn bạn đã rất nhiệt tình giúp đỡ mình!!!

Mình đã xem qua 2 ví dụ của bạn gửi cho mình (Chẳng biết gì về code VBA cả mà cũng xem :)) ) thì theo mình nghĩ thì đoạn bạn thêm ở file 2
Shapes("Cvu" & j).TextFrame.Characters.Text = Sheet2.Cells(i + j + 1, 5)
thì có nghĩa là có thể add thêm bất kỳ 1 text box nào vào và khai báo tương ứng với số cột?! (không biết đúng không đây?!)
và sẵn cho mình hỏi thêm bạn đoạn code:
ThisWorkbook.Path & "\ANH\" & Format(i + j, "000") & ".jpg"

Thì phần khai báo hình ảnh bắt buộc phải là "000" và đuôi là "Jpg". Nếu hình ảnh để thế này thì chỉ áp dụng cho cty ít nhân viên chứ nếu trên 500 NV thì thực ra rất khó gợi nhớ đến tên hình của ai và việc tìm kiếm sẽ rất mất thời gian.

Bên mình thì lưu hình ảnh bằng mã NV luôn (mã NV của mình = tên NV + kí tự đầu của Họ + họ lót + ngày tháng năm sinh + giới tính) vậy khi cần in NV nào thì chỉ cần nhập mã NV <- Đây là ý tưởng công việc của mình muốn học hỏi và nhờ Bạn giúp đỡ! (vd: Nguyễn Văn Tèo - Sinh ngày 31/12/13 -> Mã NV: TEONV311213M)
Phần chọn trang in của bạn (sử dung datavalidation thì phải) mình chưa hiểu lắm!? Mình muốn là chỗ đấy là 1 commbo box có thể gõ ký tự tìm kiếm vào và khi nhập mã NV thì phần bên thẻ tự động nhận. Có thể cho 4 commbo box tương ứng với 4 mã số thẻ để khi nhập mã NV vào commbobox nào thì thẻ tương ứng nhận mã và in, còn lại không có mã thì không in (tiết kiệm giấy...).

Một vài ý tưởng công việc các bạn xem giúp! Chân thành cám ơn.
 
Lần chỉnh sửa cuối:
Đúng như bạn viết:

-Bạn có thể thêm tất cả những gì Excel cho thêm trên đó.

-Về ảnh thì mình đặt vậy cho tiện thôi chứ trong Hồ sơ nên có cột tên ảnh và code sẽ nhập ảnh đúng theo tên của dòng Hồ sơ đó.

-Về Mã nhân viên:Theo mình trên thực tế đôi khi mình không rõ chính xác tên đệm, vậy thì mã nhân viên theo mình bạn cứ đặt thẳng tên và số thứ tự
Ví dụ: BICH001 - Trường hợp có đên 800 người trùng tên Bich thì BICH800
Cái gì cũng vậy càng đơn giản bao nhiêu thì càng tiện lợi bấy nhiêu.

-Về in ấn và thực hiện sau này sẽ khác, đây là mình minh hoạ vậy thôi để bạn tham khảo chứ sau này trong hồ sơ sẽ thên cột đã in và bạn sẽ điền số lần in. Trên Form bạn sẽ lọc theo số lần in, ví dụ bạn in lần 2 thì chỉ hiện những người có số lần in <2 vì những người >=2 đã in rồi. Sau đó bạn đánh dấu chọn ai thì in thôi thẻ người đó và cộng thêm số lần in 1 lần
 
Đúng như bạn viết:

-Bạn có thể thêm tất cả những gì Excel cho thêm trên đó.

-Về ảnh thì mình đặt vậy cho tiện thôi chứ trong Hồ sơ nên có cột tên ảnh và code sẽ nhập ảnh đúng theo tên của dòng Hồ sơ đó.

-Về Mã nhân viên:Theo mình trên thực tế đôi khi mình không rõ chính xác tên đệm, vậy thì mã nhân viên theo mình bạn cứ đặt thẳng tên và số thứ tự
Ví dụ: BICH001 - Trường hợp có đên 800 người trùng tên Bich thì BICH800
Cái gì cũng vậy càng đơn giản bao nhiêu thì càng tiện lợi bấy nhiêu.

-Về in ấn và thực hiện sau này sẽ khác, đây là mình minh hoạ vậy thôi để bạn tham khảo chứ sau này trong hồ sơ sẽ thên cột đã in và bạn sẽ điền số lần in. Trên Form bạn sẽ lọc theo số lần in, ví dụ bạn in lần 2 thì chỉ hiện những người có số lần in <2 vì những người >=2 đã in rồi. Sau đó bạn đánh dấu chọn ai thì in thôi thẻ người đó và cộng thêm số lần in 1 lần

Cám ơn bạn đã reply topic mình!
- Phần Ảnh hiện tại mình đang lưu khoảng 500 ảnh của NV và đặt tên theo mã NV rồi nên bây giờ muốn chỉnh lại phần code bạn cho để sao cho nhận được ảnh vào.
- Phần Mã NV cũng thế !! mình lấy code abbname() để gắn vào áp dụng và các phòng ban đã dùng và triển khai rồi nên bây giờ chỉnh lại là cả vấn đề.
- Vấn đề In bạn nói thì thực lòng mình hiểu ý tưởng của bạn nhưng để biên dịch ra code VBA thì hix hix! Nhờ bạn bớt chút thời gian giúp đỡ mình!
 
Dưới đây là lệnh Load ảnh:

ThisWorkbook.Path & "\ANH\" & Format(i + j, "000") & ".jpg"

Bạn sửa như sau nha:

ThisWorkbook.Path & "\ANH\" & MaNV & ".jpg"

Phần in ấn và chỉ in thẻ có nội dung thuộc phần nâng cao bạn cứ làm phần đầu đi sau này sử sau (Thạm chí bạn còn phải kiểm tra ảnh có hay không hoặc có nhưng sai tên nữa)
Theo mình bạn nên lập file ví dụ và nhập lấy khoảng 20-30 người, bạn chỉnh sửa hay mọi người tham gia thống nhất trên 1 file hay cấu trúc file thì bạn nhanh đạt kết quả hơn.
 
Lần chỉnh sửa cuối:
Cám ơn bạn lần nữa!!!
Cho mình hỏi phần datavalidation mình muốn thay = commbo box và nhận lấy MaNV thì phải làm sao, nhờ bạn hướng dẫn tiếp dùm.
thx!

Sau khi mày mò code hư luôn cả code! :( Nhờ bạn xem giúp mình!!!
 

File đính kèm

Lần chỉnh sửa cuối:
@Sealand: Cho mình hỏi sao mình thay dòn lệnh:
ThisWorkbook.Path & "\ANH\" & MaNV & ".jpg"

vào nó báo lỗi sai cú pháp, bạn vui lòng hướng dẫn mình với.
cám ơn bạn trước!
 
@Sealand: Cho mình hỏi sao mình thay dòn lệnh:
ThisWorkbook.Path & "\ANH\" & MaNV & ".jpg"

vào nó báo lỗi sai cú pháp, bạn vui lòng hướng dẫn mình với.
cám ơn bạn trước!

Nếu tên file ảnh đã có đuôi .jpg rồi bạn viết như sau:

ThisWorkbook.Path & "\ANH\" & "Tên file ảnh"
 

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

Back
Top Bottom