Xin code chống in ấn trong excel

Liên hệ QC

huuthanhxd

Thành viên mới
Tham gia
22/4/08
Bài viết
45
Được thích
3
Nghề nghiệp
Kỹ sư xây dựng
Em là kỹ sư kinh tế, thường làm các dự án cho các công ty nhằm kiếm thêm bát cơm manh áo. Nhiều lúc em muốn gửi file mềm cho họ để họ kiểm tra trước sau đấy mới tính đến in ấn hàng loạt và trao sản phẩm. Hiện tại em đã biết code dùng VBA để chống lưu file. Nhưng em muốn xin đoạn code chống in ấn, can thiệp vào các sheet. Nếu muốn in được đòi hỏi phải nhập 1 pass để in. Tức là khi người khác sử dụng chức năng Print thì sẽ có một thông báo đòi nhập pass. rất mong các anh giúp đỡ. Em xin cảm ơn!
 
Chào bạn
Để hạn chế việc in ấn, bạn có thể viết codes trong ThisWorkbook, bạn chọn sự kiện Workbook_BeforePrint. Tuy nhiên bạn cần khống chế nhiều thứ khác vì nếu người ta không cho Enable Macro thì codes cũng chẳng tác dụng gì. Thế nên trong file của bạn phải buộc người dùng Enable Macro (thì mới xem được chẳng hạn).

Chúc bạn thành công
TDN
 
Upvote 0
Như bác Tedaynui đã nói, cách này rất khó. Chỉ có thể xuất sang file pdf và dùng chế độ bảo mật chống in thôi, nhưng vẫn có cách c r a c k được.

Mà tên phần mềm anh đào tạo tên sai nhé: SHAP ???
 
Upvote 0
bạn ơi, có thể share mình code trong vba chống lưu file đc k?
thanks
 
Upvote 0
Như bác Tedaynui đã nói, cách này rất khó. Chỉ có thể xuất sang file pdf và dùng chế độ bảo mật chống in thôi, nhưng vẫn có cách c r a c k được.

Mà tên phần mềm anh đào tạo tên sai nhé: SHAP ???
Xin cảm ơn bác đã nhận biết lỗi của em. Bác đúng là dân IT đến 1 chữ cũng không tha. Đây cũng là kinh nghiệm của 1 coder chăng? Sai 1 tý không bao giờ chạy.
 
Upvote 0
bạn ơi, có thể share mình code trong vba chống lưu file đc k?
thanks
Đây là code chống lưu file thưa bạn:
Private Sub workbook_BeforeSave(ByVal SaveAsUI As Boolean, _
Cancel As Boolean)
Dim lReply As Long
If SaveAsUI = True Then
lReply = MsgBox("XIN LOI! DAY LA FILE BAN QUYEN. BAN KHONG DUOC PHEP THAY DOI FILE GOC." _
& "BAN CO MUON TIEP TUC LUU FILE?", vbQuestion + vbOKCancel)
Cancel = (lReply = vbCancel)
If Cancel = False Then Me.Save
Cancel = True
End If
End Sub
Nhưng có 1 cái mà cũng nhờ các bác chỉnh sửa giúp cho luôn đó là code này nó ko cho lưu file nhưng mình có thể thoát ra copy 1 bản và đổi tên file thế là OK như thường.
 
Upvote 0
Anh ơi! anh có code này không share cho em với ah? Cảm ơn anh nhiều!
Chào bạn
Thật tình mình không có codes này, hi hi. Vì mình chưa bao giờ khoá cả và nếu có thì chỉ để bảo vệ công thức và không pass, những file của mình đều share cho bạn bè dùng cho vui và góp ý cho mình hoàn thiện thêm thôi.

Nhưng yêu cầu của bạn mình nghĩ không thực hiện được ngay cả cách chuyển qua pdf của thầy PhanTuHuong. Vì bạn cho mở file, cho xem nội dung mà không cho in thì ngay cả người bình thường không cần @r*ck cũng chỉ cần chụp ảnh màn hình rồi in ảnh chụp đó vô tư ???

TDN
 
Upvote 0
Thực ra vẫn có cách làm được khi dùng Lockxls, nó cho phép Enable macro thì có thể thực hiện được công việc đó.
 
Upvote 0
Web KT

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

Back
Top Bottom