Code: In hàng loạt đợt 1 xong tự động in hàng loạt đợt kế tiếp ... cho đến đợt cuối cùng

Liên hệ QC

hoanglocphat

Thành viên thường trực
Tham gia
27/1/13
Bài viết
258
Được thích
30
Chào các anh chị & các bạn
Trước đây tôi có chọn Validation để in phiếu, tôi bấm liên tục để in và cuối cùng là máy in bị hư (có thể do máy in không kịp ghi nhận, hiện đang sử dụng máy in Canon LBP 2900)
Vừa rồi tôi được các bạn đã giúp tôi code in liên tục
Bây giờ tôi muốn in phiếu lương từ số 1 -> 95, nhưng nếu in liên tục như vậy thì không biết máy in có ghi nhận kịp không, nếu không thì máy in sẽ hư nữa
Vì thế, thay vì in liên tục từ số 1 -> 95, thì sẽ in từng đợt khoảng 20 phiếu 1 lần
ví dụ: in đợt 1: từ số 1 ->20 sau khi in xong đợt 1 rồi in tiếp đợt 2: từ số 21 đến 40 cứ thế và đợt 5: từ 81 đến 95
Tôi không biết có code nào làm được việc trên không? Mong các bạn giúp đỡ và góp ý
Lưu ý: số bắt đầu in có thể là 1 số bất kỳ
mục đích in liên tục để rảnh tay làm việc khác
Cảm ơn các bạn
 

File đính kèm

  • InHangLoat_PhieuLuong.xlsm
    35.9 KB · Đọc: 19
Upvote 0
Theo bài trên thì thấy dùng
Sleep hay Application.Wait (Now TimeValue("00:00:01"))
Nhưng tôi cũng chưa biết cách thêm vào code dưới như sao để nó chạy theo yêu cầu của bài đầu tiên
Mã:
Sub InPhieuLuong()
    Dim TuSo, DenSo, BatDau, KetThuc As Long
    Application.Calculation = xlAutomatic
    TuSo = [C2]
    DenSo = [D2]
    KetThuc = 1

    For BatDau = TuSo To DenSo Step KetThuc
        [C2] = BatDau
        [B2] = TuSo ' cell B2 laÌ cell trung gian hoãòc cell Validation
        TuSo = TuSo + 1

        ActiveSheet.PrintOut
    Next BatDau
End Sub
Có thể dùng một số ô phụ làm trung gian
Mong các bạn giúp tôi, cảm ơn các bạn
 
Upvote 0
Để Application.Wait (Now TimeValue("00:00:01")) sau ActiveSheet.PrintOut
Theo tôi để khoảng 15s (tùy theo tốc độ của mỗi máy in)
Như vậy cứ sau 15s thì sẽ in 1 phiếu, khỏi cần định lượng số phiếu trước khi in
 
Upvote 0
Web KT

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

Back
Top Bottom