Sub ProtectSheetsNoPassword()
Dim wb As Workbook
Dim ws As Worksheet
Set wb = ActiveWorkbook
For Each ws In [Link]
[Link] DrawingObjects:=True, _
Contents:=True, _
Scenarios:=True, _
AllowFormattingCells:=True, _
AllowFormattingColumns:=True, _
AllowFormattingRows:=True, _
AllowInsertingColumns:=True, _
AllowInsertingRows:=True, _
AllowInsertingHyperlinks:=True, _
AllowDeletingColumns:=True, _
AllowDeletingRows:=True, _
AllowSorting:=True, _
AllowFiltering:=True, _
AllowUsingPivotTables:=True
'[Link] 'Uncomment if you want to unprotect the sheets
Next
End Sub
The AllowFormattingRows:=True argument is the one you need to focus on for hiding
rows.
[Link] Password:="yourPassword", DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True, AllowSorting:=True, AllowFiltering:=True, _
AllowUsingPivotTables:=True, UserInterfaceOnly:=True
Sub ProtectButAllowFormatting()
'PURPOSE: Protect Worksheet But Allow User to Format & Hide Columns or Rows
'SOURCE: [Link]
Dim myPassword As String
'Input Password to Variable
myPassword = "ExcelGuru"
'Protect Worksheet (Allow Formatting Columns)
[Link] Password:=(myPassword), AllowFormattingColumns:=True
'Protect Worksheet (Allow Formatting Rows)
[Link] Password:=(myPassword), AllowFormattingRows:=True
'Protect Worksheet (Allow Formatting Columns & Rows)
[Link] _
Password:=(myPassword), _
AllowFormattingColumns:=True, _
AllowFormattingRows:=True
End Sub