Hạn chế VBA trong bảo vệ bảng tính

  • Thread starter nguyenminhxiem
  • Ngày gửi
N

nguyenminhxiem

Cao cấp
20/2/08
215
8
0
Ha Long
Em thấy khi bảo vệ bảng tính tránh người khác sửa chữa thì các đoạn lập trình bằng VBA sẽ không hoạt động được. Bác nào có cách bảo vệ bảng tính mà VBA vẫn chạy được thì giúp em với nhé!
 
Khóa học Quản trị dòng tiền
N

NamLamSon

Gà vùng cao
19/4/08
150
0
16
Thanh Hoá
www.webketoan.com
Chạy VBA thì trong VBA phải có câu lệnh cho mở khoá -> sửa chữa bảng tính -> khoá bảng tính.
Bạn cứ làm như vậy nha
 
Sửa lần cuối:
A

atmt17

Trung cấp
26/9/08
70
1
6
Đồng Nai
Tùy chuyện, có khi cũng không cần mở khóa luôn!
Đầu tiên phải xem khi chạy code thì nó sẽ tác động lên những cell nào, vùng nào! Vậy ta Unlock các cell trong vùng này trước khi protect sheet
Bạn hãy xem kỹ lại code và làm theo hướng này là được
 
N

nguyenminhxiem

Cao cấp
20/2/08
215
8
0
Ha Long
Cảm ơn các bác! có bác nào có ví dụ hướng dẫn không. nghĩa là mình sẽ viết câu lệnh mở khóa. sau đó hết lệnh thì mình lại khoá vào ah! ý tưởng hay nhưng em phải thử xem thế nào đã nhé!
 
HongViet

HongViet

Cao cấp
10/11/05
286
10
18
Đà nẵng
Xin mời bạn thử với cặp macro sau:

Cảm ơn các bác! có bác nào có ví dụ hướng dẫn không. nghĩa là mình sẽ viết câu lệnh mở khóa. sau đó hết lệnh thì mình lại khoá vào ah! ý tưởng hay nhưng em phải thử xem thế nào đã nhé!
Option Explicit
Sub KhoaCot_C()
Columns("C:C").Select
ActiveSheet.Protect Password:="VHong"
End Sub

' * * * * * * * ** * * * *

Sub DeNhapDGiaMoi()

Columns("C:C").Select
ActiveSheet.Unprotect Password:="VHong"
End Sub

Hướng dẫn thêm chút xíu:
Bạn gán cho mỗi macro 1 tổ hợp phím để gọi nó chạy;
Sau đó thử đụng vô bất kỳ ô nào của cột 'C' sẽ thấy macro làm việc như thế nào
* Bạn có thể cho macro thứ nhất chạy; Xong ra trang tính hiện hành & thử thao tác mở mật khẩu bằng tay xem sao?
* . . . . .:biggthump
 

Xem nhiều