Tự động lưu lại Ngày -giờ mỗi khi đã in phiếu

Liên hệ QC

AnhThu-1976

Thành viên tích cực
Tham gia
17/10/14
Bài viết
1,058
Được thích
170
Các anh chị giúp code như sau
Mỗi khi sheet PGH được in, thì bên sheet Luu sẽ tự động lưu lại thông tin tên số phiếu (ô F1) và ngày giờ in phiếu (lưu ý chỉ cần lưu số phiếu chứ không cần lưu nội dung)
Trường hợp 1 phiếu được in nhiều lần thì vẫn lưu nhiều lần
Ví dụ: phiếu số 1/6 được in lúc 12:02 ngày 08/09 thì sẽ lưu vào sheet Luu
Em cảm ơn!
 

File đính kèm

  • LuuThongTin.xlsm
    19.6 KB · Đọc: 11
Các anh chị giúp code như sau
Mỗi khi sheet PGH được in, thì bên sheet Luu sẽ tự động lưu lại thông tin tên số phiếu (ô F1) và ngày giờ in phiếu (lưu ý chỉ cần lưu số phiếu chứ không cần lưu nội dung)
Trường hợp 1 phiếu được in nhiều lần thì vẫn lưu nhiều lần
Ví dụ: phiếu số 1/6 được in lúc 12:02 ngày 08/09 thì sẽ lưu vào sheet Luu
Em cảm ơn!
Theo mình nên tạo 1 nút in, Khi in sẽ ghi thời gian thực hiện sang sheet lịch sử luôn
 
Upvote 0
Bạn thử file này xem đúng yêu cầu không? Nếu tạo nút in thì có thể không lưu lịch sử khi in bằng phím tắt. Ở đây mình dùng sự kiện BeforePrint
 

File đính kèm

  • LuuThongTin.xlsm
    26.7 KB · Đọc: 11
Upvote 0
Đoạn code nho nhỏ gửi bạn tham khảo,


Sub Inphieu()
Dim pgh, sluu As Worksheet
Dim dongcuoi, dongcuoi1, dongcuoi_luu As Variant
Dim soto As Long

Application.ScreenUpdating = True
Set pgh = Sheets("PGH")
Set sluu = Sheets("Luu")
dongcuoi_luu = sluu.Cells(sluu.Rows.Count, 1).End(xlUp).Row
With pgh
soto = .Range("K1").Value
dongcuoi = .Cells(.Rows.Count, "F").End(xlUp).Row
dongcuoi1 = "A1:F" & dongcuoi
If .Range("F1").Value = sluu.Range("A" & dongcuoi_luu) And .Range("F" & dongcuoi).Value = sluu.Range("C" & dongcuoi_luu).Value Then
Worksheets.Application.ActiveSheet.Range(dongcuoi1).PrintOut Copies:=soto, Collate:=True
Else
sluu.Range("A" & dongcuoi_luu + 1) = .Range("F1").Value
sluu.Range("B" & dongcuoi1).NumberFormat = "dd/mm/yyyy"
sluu.Range("B" & dongcuoi_luu + 1) = .Range("B2").Value
sluu.Range("C" & dongcuoi_luu + 1) = .Range("F" & dongcuoi).Value
Worksheets.Application.ActiveSheet.Range(dongcuoi1).PrintOut Copies:=soto, Collate:=True
End If
End With
Application.ScreenUpdating = False
End Sub
Bài đã được tự động gộp:

Nếu ngày in (luôn là ngày hiện tại) thì bạn đặt dòng B2 của PGH là now() thì nó sẽ có giờ luôn, khi copy qua sheet lưu sẽ có ngày và giờ luôn
Bài đã được tự động gộp:

 

File đính kèm

  • LuuThongTin.xlsm
    52.6 KB · Đọc: 9
Lần chỉnh sửa cuối:
Upvote 0
Web KT

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

Back
Top Bottom