第二步:添加工作簿事件代码 在VBA编辑器中双击 ThisWorkbook,粘贴以下代码:vba Private Sub Workbook_Open() ' 工作簿打开时锁定所有工作表 Dim ws As Worksheet For Each ws In ThisWorkbook.Worksheets ws.Protect Password:="12345
Set ws = Sheets("Main") ws.Protect UserInterfaceOnly:=True ws.Range("A1").Value = "当前用户:" & currUser & "(" & arrUser(i, 2) & ") " & Chr(10) & "用户权限:" & currPermission If currPermission = "All" Or InStr(currPermission, "/用户权限表/") Then ws.OLEObjects("CmdUse...
cell4Setsh =ActiveSheet56'解锁表7sh.Unprotect"123456"89'选择所有的单元格并设置不锁定10sh.Cells.Locked =False1112'选择目标单元格,并设置锁定13sh.Range(rng).Locked =True1415'锁定表(除了表头不允许修改,其他可以操作)16sh.Protect Password:="123456", _17UserInterFaceOnly:=True, _18DrawingObjects:=False...
当blnEnabledIt=0时解除工作表保护。代码如下: Sub ProtectIt(Optional blnEnabledIt As Boolean = True)‘ blnEnabledIt = FalseWith ActiveSheetIf blnEnabledIt Then.EnableSelection = xlUnlockedCells.Protect Contents:=True, UserInterfaceOnly:=TrueElse.EnableSelection = xlNoRestrictions.UnprotectEnd IfEnd WithE...
Excel VBA Protect参数详解 By 张印东 摘要:⽤VBA对EXCEL编程时,Worksheet.Protect⽅法总计有16个参数,其中部分参数的实际意义很难理解,本⽂重点对如下6个参数的含义进⾏了深⼊挖掘:→DrawingObjects →Contents →Scenarios →UserInterfaceOnly →AllowSorting →AllowFiltering 说明:本⽂所述内容均通过Excel...
ActiveSheet.Protect contents:=True, userInterfaceOnly:=True 本示例将活动工作簿设为只读? ActiveWorkbook.ChangeFileAccess Mode:=xlReadOnly 本示例使共享工作簿每三分钟自动更新一次? ActiveWorkbook.AutoUpdateFrequency = 3 下述Sub 过程清除活动工作簿中 Sheet1 上的所有单元格的内容。
引用:Excel开发人员参考中对通过VBA保护工作表的方法进行了如下描述: Worksheet.Protect方法 保护工作表使其不能被修改。 语法 表达式.Protect(Password,DrawingObjects,Contents,Scenarios,UserInterfaceOnly,AllowFormattingCells,AllowFormattingColumns,AllowFormattingRows,AllowInsertingColumns,AllowInsertingRows,AllowInsertingHyperl...
wks.Protect UserInterfaceOnly:=True Next wks End If End Sub 示例2:要求用户输入指定值 只有当工作簿中的工作表Sheet1的单元格A1中的值为“完美Excel”时,才能关闭该工作簿。代码如下: Private Sub Workbook_BeforeClose(CancelAs Boolean) ...
被保护后要写入数据,步骤如下:1、解除保护 2、写入数据 3、重新保护
19、Protect:保护工作表 '保护工作表,密码123,仅在用户界面有效,用代码可以操作工作表 ws.Protect Password:=123, userinterfaceonly:=True 20、Sort:工作表排序 With ws.Sort .SortFields.Clear .SortFields.Add Key:=Range("b2:b10"), _ SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:...