Không cho vào VBA Edit bằng phím (Alt+F11) (1 người xem)

  • Thread starter Thread starter chibi
  • Ngày gửi Ngày gửi
Liên hệ QC

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

chibi

Thành viên tích cực
Thành viên danh dự
Tham gia
10/1/07
Bài viết
1,120
Được thích
623
Chào cả nhà.
Có câu hỏi trùng với chủ đề, mọi người trợ giúp.
Cảm ơn nhiều.
 
Anh thử nghiệm với code sau xem sao:
[GPECODE=vb]Sub Auto_Open()
Application.OnKey "%{F11}", "GPE"
End Sub
Sub GPE()
MsgBox "Hello!"
End Sub[/GPECODE]
 
Upvote 0
Chào cả nhà.
Có câu hỏi trùng với chủ đề, mọi người trợ giúp.
Cảm ơn nhiều.
Nếu có "gan" hãy tải file nào bị nhiểm con virus StartUp về nghiên cứu code của nó nhé
(Code ấy nó có chiêu khóa cũng khá hay đấy)
Ẹc... Ẹc...
 
Upvote 0
Upvote 0
Nếu có "gan" hãy tải file nào bị nhiểm con virus StartUp về nghiên cứu code của nó nhé
(Code ấy nó có chiêu khóa cũng khá hay đấy)
Ẹc... Ẹc...
Nhân tiện nói về virus StartUp anh cho em hỏi một tí. Anh có biết Module StartUp trong file đó được tạo như thế nào không? Nó có tính chất như một Worksheet. Em mò hoài mà không biết làm sao tạo được Module như vậy.
 
Upvote 0
Gần đây bạn huuthang_bd có hỏi về một vấn đề nhưng do hỏi người cụ thể nên tôi không dám có ý kiến gì. Nhưng nay hơn 3 ngày đã qua đi mà không có câu trả lời, vậy tôi mạo muội góp ý tưởng nhỏ vì rất có thể có bạn nào đó bây giờ và trong tương lai quan tâm.

Thực ra câu hỏi về virus StartUp

http://www.giaiphapexcel.com/forum/...-Edit-bằng-phím-(Alt-F11)&p=528950#post528950

nhưng tôi không có virus StartUp mà lại có tập tin của bạn hoang.ru

http://www.giaiphapexcel.com/forum/...Chuyển-định-dạng-thành-số&p=529495#post529495

Theo miêu tả thì tôi thấy nó giống module "foxz" trong tập tin ở trên. Tôi đã thử làm như sau:

Khi tôi xem trong ObjectBrowser (Alt + F11 --> View --> Object Browser) các thuộc tính của Workbook (phải chuột và chọn Show hidden members) thì thấy: Property Modules As Sheets

Thế thì cứ coi đó là Sheets đi, rồi viết thử code để thao tác với Modules - Sheets, tức Add, Select, Copy ...

Ta mở Excel (mặc định là book mới là Book1) --> thêm 1 module, cứ để mặc định là Module1. Ta viết code cho Module1

Mã:
Sub ModulesCount()
    MsgBox ActiveWorkbook.Modules.Count
End Sub

Chạy code trên ta nhận được kết quả là 0.

Ta viết tiếp code cho Module1

Mã:
Sub CreateModule()
    ActiveWorkbook.Modules.Add.Name = "secret"
End Sub

Sau khi chạy code trên thì thấy có Module mới là "secret"
Chạy lại Sub ModulesCount ta có kết quả là 1.
Như vậy thì Module1 và secret ở cùng "nhà - Modules" nhưng chúng không giống nhau. Ít ra thì secret có trong ActiveWorkbook.Modules còn Module1 thì không.

Ta thử xem có thể thao tác với secret như với worksheet không. Trước tiên ta viết 1 code đơn giản cho module secret

Mã:
Sub he()
    Debug.Print ActiveWorkbook.Modules.Count
End Sub

Ta viết tiếp code sau cho module1

Mã:
Sub CopyToNewbook()
    With Sheets("secret")
        .Select
        .Copy
    End With
    With ActiveWorkbook
        .Title = ""
        .Subject = ""
        .Author = ""
        .Keywords = ""
        .Comments = "infected by secret!"
    End With
    
    Workbooks(ActiveWorkbook.Name).SaveAs Filename:="c:\MySecret.xls", FileFormat:=xlNormal _
        , Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False
End Sub

Chạy code ta có tập tin mới là MySecret.xls với module secret

Nếu ở trên thay cho code he() ta viết cho module secret code CreateModule() và CopyToNewbook() thì tập tin MySecret.xls sẽ có module secret với code như thế.
 
Lần chỉnh sửa cuối:
Upvote 0
Gần đây bạn huuthang_bd có hỏi về một vấn đề nhưng do hỏi người cụ thể nên tôi không dám có ý kiến gì. Nhưng nay hơn 3 ngày đã qua đi mà không có câu trả lời, vậy tôi mạo muội góp ý tưởng nhỏ vì rất có thể có bạn nào đó bây giờ và trong tương lai quan tâm.
Cảm ơn anh, đúng là cái em hỏi.
 
Upvote 0
Web KT

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

Back
Top Bottom