การป้องกันชีทแบบไม่เหมือนกัน โดยใช้ Protect
Posted: Thu Mar 29, 2012 11:45 am
การป้องกันชีทแบบไม่เหมือนกัน โดยใช้ Protect
การป้องกันชีท โดยใช้ Protect
1.ต้องการป้องกันชีทโดยคลิกเซลได้โดยให้อยู่ในชีท 1 2 3 5
2.ต้องการป้องกันชีทโดยคลิกเซลไม่ได้โดยให้อยู่ในชีท 4
จึงเขียน โคดดังนี้
ผลที่ได้คือ ชีท 1 3 5 ทำงานป้องกันชีทโดยคลิกเซลได้ ถูกต้อง
ชีท 4 ทำงานป้องกันชีทโดยคลิกเซลไม่ได้ ถูกต้อง
ชีท 2 ทำงานป้องกันชีทโดยคลิกเซลไม่ได้ ผิด
ขั้นตอนทำงานคือ
สถานะอยู่ที่ ชิท 2 แล้วค่อยRunคำสั่ง
จะสังเกตข้อที่ผิดพลาดคือ เมื่ออยู่ในสถานะอยู่ที่ ชิทใดก่อนสั่ง Run โปรแกรมจะสั่งให้ชีทนั้นทำงาน
ตามคำสั่งนี้ Worksheets("Sheet4").Protect Password:="123", DrawingObjects:=True, Contents:=True, Scenarios:=True
ActiveSheet.EnableSelection = xlUnlockedCells
จะเขียนโดคอย่างไรดีครับ
การป้องกันชีท โดยใช้ Protect
1.ต้องการป้องกันชีทโดยคลิกเซลได้โดยให้อยู่ในชีท 1 2 3 5
2.ต้องการป้องกันชีทโดยคลิกเซลไม่ได้โดยให้อยู่ในชีท 4
จึงเขียน โคดดังนี้
Code: Select all
Sub ProtectAllSheets()
For Each Sht In ThisWorkbook.Worksheets
Sht.Protect Password:="123", DrawingObjects:=True, Contents:=True, Scenarios:=True
ActiveSheet.EnableSelection = xlNoRestrictions
Next
Worksheets("Sheet4").Protect Password:="123", DrawingObjects:=True, Contents:=True, Scenarios:=True
ActiveSheet.EnableSelection = xlUnlockedCells
End Subชีท 4 ทำงานป้องกันชีทโดยคลิกเซลไม่ได้ ถูกต้อง
ชีท 2 ทำงานป้องกันชีทโดยคลิกเซลไม่ได้ ผิด
ขั้นตอนทำงานคือ
สถานะอยู่ที่ ชิท 2 แล้วค่อยRunคำสั่ง
จะสังเกตข้อที่ผิดพลาดคือ เมื่ออยู่ในสถานะอยู่ที่ ชิทใดก่อนสั่ง Run โปรแกรมจะสั่งให้ชีทนั้นทำงาน
ตามคำสั่งนี้ Worksheets("Sheet4").Protect Password:="123", DrawingObjects:=True, Contents:=True, Scenarios:=True
ActiveSheet.EnableSelection = xlUnlockedCells
จะเขียนโดคอย่างไรดีครับ