vba - 工作表不会取消保护-Excel VBA
问题描述
出于某种原因,当我运行下面的代码时,我收到一条错误消息,指出我要更改的工作表不受保护。如果我使用 Excel 保存选项保存,它工作正常,如果我在工作表上运行宏,我会收到错误说工作表受到保护。为什么代码无法识别未保护工作表的部分?
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim sSheetName As String
Dim logSheet As Worksheet
Dim logRow As Range
Set logSheet = Sheets("LogDetails")
sSheetName = "1107"
Sheets("LogDetails").Unprotect
Application.EnableEvents = False
Sheets("LogDetails").Range("A" & Rows.Count).End(xlUp).Offset(1, 0) = "Narrative Box" *****Error at this line**
Sheets("LogDetails").Range("A" & Rows.Count).End(xlUp).Offset(0, 1).Value = Sheets("1107").Shapes("TextBox 1").TextFrame.Characters.Text
Sheets("LogDetails").Range("A" & Rows.Count).End(xlUp).Offset(0, 2).Value = Environ("username")
Sheets("LogDetails").Range("A" & Rows.Count).End(xlUp).Offset(0, 3).Value = Now
Sheets("LogDetails").Columns("A:D").AutoFit
Application.EnableEvents = True
End Sub
解决方案
我能够通过添加以下内容来纠正上述问题:
Worksheets.protect, UserInterFaceOnly:=True
当代码打开时。
推荐阅读
- r - 如何将多个向量保存到列表中以在 R 中返回
- spring-boot - Spring数据:如何从多个Mongo集合中获取数据
- php - Netsuite API 抛出 400 错误请求
- r - 在 R 中合并多个 DF,寻找相似之处
- blazor - Blazorize 项目运行但忽略 NavMenu.razor
- python - python tkinter 标签++1
- android - 更新 Google 应用签名证书会破坏 Google Pay
- mysql - MySQL:总和(案例时(...))+ 分组。为什么即使使用 GROUP BY 也无法显示数据集的详细信息?
- regex - 多行正则表达式匹配
- python - 使用 openCV2 和 python 无法正确检测虹膜圈?