有没有办法限制 Excel 表单的页眉和页脚?

有没有办法限制 Excel 表单的页眉和页脚?

我为销售团队准备了一份 Excel 表格。我使用了数据验证、保护单元格等,以确保表格万无一失。(最终我没能成功。)我为他们准备了一个“注释”部分,让他们写下我无法预见的任何内容。他们中的一些人开始将他们的注释写到页眉和页脚部分,而不是使用“注释”框。我如何限制他们编辑页眉和页脚?

答案1

这里有一个选项,当用户点击“保存”时,它会将页眉和页脚恢复为您确定的值。本质上,VBA 代码告诉 Excel 在保存文档之前将页眉和页脚内容设置为某些标准。

首先,您需要打开 VBA 编辑器。打开工作簿后,按 Alt+F11。

VBA 编辑器示例

双击左侧的“ThisWorkbook”打开新窗口。然后只需复制/粘贴以下信息即可。

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
    With ws.PageSetup
        'Replace the information after the equals sign with what you want.
        .LeftHeader = ActiveSheet.Range("A100").Value
        '.CenterHeader is the middle of the header. Put any text you want in quotes ""
        .CenterHeader = "Header Text"
        .RightHeader = ws.Name
        .LeftFooter = ActiveWorkbook.Name
        'To leave a section blank, just use two quotes like in .CenterFooter
        .CenterFooter = ""
        .RightFooter = Date & "  " & Time
    End With
Next ws
'No need to change any of the comments beginning with a '. These will not affect your code
End Sub

在这个例子中,.CenterHeader = "Header Text" 将把中心标题部分恢复为您在“”之间输入的内容。

ws.Name 将工作表的名称放入左页脚。ActiveWorkbook.Name 将文件名放入左页脚。Date & " " & Time 将日期和时间填入右页脚。这将更新用户保存文档的日期和时间。

您可以添加一句话告知用户,在保存时,输入到页眉/页脚中的任何内容都将丢失,请使用注释部分。

不幸的是,我找不到任何东西来“锁定”页眉/页脚以防止其被编辑。

答案2

保护工作簿将阻止对页眉和页脚的更改。您需要格式化单元格以取消对单元格的保护,以便仅允许更改允许用户更改的单元格,并保护您不希望用户更改的单元格。然后,保护工作簿,并且您可以选择对工作簿进行密码保护,以防止用户取消保护。

相关内容