运行 保存时的工作表模块
Run Worksheet Modules on Save
我有一个当前 运行 在 4 个工作表中的宏,它突出显示特定范围内的单元格行(每个工作表的范围不同),但要保持工作表看起来干净,不要留下突出显示当我在包含宏的每个工作表中单击单元格 A6 时,它内置了一条线,告诉它清除突出显示。我的问题是让其他使用工作表的人遵循这种方法,所以我想看看是否有办法在保存文件时使用 Workbook_BeforeSave 工作簿函数清除工作表上的所有突出显示。
有没有办法从工作簿模块迭代每个工作表中存在的 "clear formatting" 子项?工作表模块中的清除代码如下(但我似乎无法在工作簿模块中运行):
Dim bInRange As Boolean
Static rOld As Range
If Not bInRange Then
Set rOld = Nothing
Exit Sub
End If
为您的代码创建一个子程序。像这样。
Private sub RunMyCode()
Dim bInRange As Boolean
Static rOld As Range
If Not bInRange Then
Set rOld = Nothing
Exit Sub
End If
End sub
Private Sub Workbook_BeforeClose(Cancel as Boolean)
'Call it before your workbook is closed
RunMyCode
End Sub
你可以运行这样的代码
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
call sheet1.clear_formatting
call sheet2.clear_formatting
call sheet3.clear_formatting
call sheet4.clear_formatting
end sub
sheet1 是 sheet 的代码名称,您也可以使用 sheets("sheet1")。clear_formatting 如果这样更容易
或者如果你有很多 sheet 你可以做
for each ws in activeworkbook.sheets
call ws.clear_formatting
next
我有一个当前 运行 在 4 个工作表中的宏,它突出显示特定范围内的单元格行(每个工作表的范围不同),但要保持工作表看起来干净,不要留下突出显示当我在包含宏的每个工作表中单击单元格 A6 时,它内置了一条线,告诉它清除突出显示。我的问题是让其他使用工作表的人遵循这种方法,所以我想看看是否有办法在保存文件时使用 Workbook_BeforeSave 工作簿函数清除工作表上的所有突出显示。
有没有办法从工作簿模块迭代每个工作表中存在的 "clear formatting" 子项?工作表模块中的清除代码如下(但我似乎无法在工作簿模块中运行):
Dim bInRange As Boolean
Static rOld As Range
If Not bInRange Then
Set rOld = Nothing
Exit Sub
End If
为您的代码创建一个子程序。像这样。
Private sub RunMyCode()
Dim bInRange As Boolean
Static rOld As Range
If Not bInRange Then
Set rOld = Nothing
Exit Sub
End If
End sub
Private Sub Workbook_BeforeClose(Cancel as Boolean)
'Call it before your workbook is closed
RunMyCode
End Sub
你可以运行这样的代码
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
call sheet1.clear_formatting
call sheet2.clear_formatting
call sheet3.clear_formatting
call sheet4.clear_formatting
end sub
sheet1 是 sheet 的代码名称,您也可以使用 sheets("sheet1")。clear_formatting 如果这样更容易
或者如果你有很多 sheet 你可以做
for each ws in activeworkbook.sheets
call ws.clear_formatting
next