Các đoạn mã VBA cho Excel
Chia sẻ bởi Nguyễn Văn Hạnh |
Ngày 06/11/2018 |
33
Chia sẻ tài liệu: Các đoạn mã VBA cho Excel thuộc Tin học 9
Nội dung tài liệu:
Cấm in:
Private Sub workbook_BeforePrint(Cancel As Boolean) Cancel = True MsgBox "Thành thật xin lỗi, Toi khong cho phep ban in trang nay", vbInformation End Sub
Cấm lưu bảng tính với tên khác
Private Sub workbook_BeforeSave(ByVal SaveAsUI As Boolean, _ Cancel As Boolean) Dim lReply As Long If SaveAsUI = True Then lReply = MsgBox("Sorry, you are not allowed to save this workbook as another name." _ & "Do you wish to save this workbook?", vbQuestion + vbOKCancel) Cancel = (lReply = vbCancel) If Cancel = False Then Me.Save Cancel = True End If End Sub
Cấm in từng sheet:
Private Sub workbook_BeforePrint(Cancel As Boolean) Select Case ActiveSheet.Name Case "Sheet1", "Sheet2" Cancel = True MsgBox "Sorry, you cannot print this sheet from this workbook", _ vbInformation End Select End Sub
Cấm chèn thêm sheet:
Private Sub Workbook_NewSheet(ByVal Sh As Object) Application.DisplayAlerts = False MsgBox "Sorry, you cannot add any more sheets to this workbook", _ vbInformation Sh.Delete Application.DisplayAlerts = True End Sub
Phá pass trong sheet
Sub PasswordBreaker() If ActiveSheet.ProtectContents = False Then MsgBox "Sheet `" & ActiveSheet.Name & "` is unprotected!", vbInformation Else If MsgBox("Sheet `" & ActiveSheet.Name & "` is protected, do you want to unprotect it?", _ vbYesNo + vbQuestion, "Unprotect Active Sheet") = vbNo Then Exit Sub Dim i As Integer, j As Integer, k As Integer Dim l As Integer, m As Integer, n As Integer Dim i1 As Integer, i2 As Integer, i3 As Integer Dim i4 As Integer, i5 As Integer, i6 As Integer On Error Resume Next For i = 65 To 66: For j = 65 To 66: For k = 65 To 66 For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66 For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66 For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126 ActiveSheet.Unprotect Chr(i) & Chr(j) & Chr(k) & _ Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _ Chr(i4) & Chr(i5) & Chr(i6) & Chr(n) Next: Next: Next: Next: Next: Next Next: Next: Next: Next: Next: Next If ActiveSheet.ProtectContents = False Then MsgBox "Sheet `" & ActiveSheet.Name & "` is unprotected!", vbInformation End If End Sub
Private Sub workbook_BeforePrint(Cancel As Boolean) Cancel = True MsgBox "Thành thật xin lỗi, Toi khong cho phep ban in trang nay", vbInformation End Sub
Cấm lưu bảng tính với tên khác
Private Sub workbook_BeforeSave(ByVal SaveAsUI As Boolean, _ Cancel As Boolean) Dim lReply As Long If SaveAsUI = True Then lReply = MsgBox("Sorry, you are not allowed to save this workbook as another name." _ & "Do you wish to save this workbook?", vbQuestion + vbOKCancel) Cancel = (lReply = vbCancel) If Cancel = False Then Me.Save Cancel = True End If End Sub
Cấm in từng sheet:
Private Sub workbook_BeforePrint(Cancel As Boolean) Select Case ActiveSheet.Name Case "Sheet1", "Sheet2" Cancel = True MsgBox "Sorry, you cannot print this sheet from this workbook", _ vbInformation End Select End Sub
Cấm chèn thêm sheet:
Private Sub Workbook_NewSheet(ByVal Sh As Object) Application.DisplayAlerts = False MsgBox "Sorry, you cannot add any more sheets to this workbook", _ vbInformation Sh.Delete Application.DisplayAlerts = True End Sub
Phá pass trong sheet
Sub PasswordBreaker() If ActiveSheet.ProtectContents = False Then MsgBox "Sheet `" & ActiveSheet.Name & "` is unprotected!", vbInformation Else If MsgBox("Sheet `" & ActiveSheet.Name & "` is protected, do you want to unprotect it?", _ vbYesNo + vbQuestion, "Unprotect Active Sheet") = vbNo Then Exit Sub Dim i As Integer, j As Integer, k As Integer Dim l As Integer, m As Integer, n As Integer Dim i1 As Integer, i2 As Integer, i3 As Integer Dim i4 As Integer, i5 As Integer, i6 As Integer On Error Resume Next For i = 65 To 66: For j = 65 To 66: For k = 65 To 66 For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66 For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66 For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126 ActiveSheet.Unprotect Chr(i) & Chr(j) & Chr(k) & _ Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _ Chr(i4) & Chr(i5) & Chr(i6) & Chr(n) Next: Next: Next: Next: Next: Next Next: Next: Next: Next: Next: Next If ActiveSheet.ProtectContents = False Then MsgBox "Sheet `" & ActiveSheet.Name & "` is unprotected!", vbInformation End If End Sub
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...
Người chia sẻ: Nguyễn Văn Hạnh
Dung lượng: |
Lượt tài: 0
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)