В настоящее время я работаю над своим первым макросом VBA для запуска функций, описанных в заголовке. В настоящее время у меня есть следующий код.
Похоже, что он работает как задумано, но мне бы хотелось, чтобы второй взгляд сказал мне, есть ли у меня какие-либо непредвиденные последствия или есть более устойчивые способы написать это. Заранее спасибо, КП.
'
' deletecomments Macro
' delete comments, removetabs, break links for rolling models
'
' Keyboard Shortcut: Ctrl+alt+R
'
Public Sub RollModel()
Dim ws As Worksheet, cmt As Comment
For Each ws In ActiveWorkbook.Worksheets
For Each cmt In ws.Comments
cmt.Delete
Next cmt
Next ws
On Error Resume Next
For Each it In ThisWorkbook.LinkSources
For Each sh In Sheets
sh.Cells.Replace it, ""
For Each cl In sh.UsedRange.SpecialCells(-4174)
If InStr(cl.Validation.Formula1, "#REF") Then cl.Validation.Delete
Next
Next
ThisWorkbook.BreakLink it, 1
Next
Application.DisplayAlerts = False
Dim Sht As Worksheet
For Each Sht In Worksheets
If Sht.Tab.ColorIndex = xlColorIndexNone Then Sht.Delete
Next
Application.DisplayAlerts = True
End Sub