То, что я пытаюсь сделать, это скрыть лист 1, если какие-либо листы с именем Hello не скрыты; и наоборот.
Затем необходимо проверить, виден ли рабочий лист или нет, кроме проверки имени, например, как показано ниже:
Private Sub HideIrrelevantSheets()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
If ws.Name Like "Hello*" Then
If ws.Visible = xlSheetVisible Then
Thisworkbook.Worksheets("Sheet 1").Visible = xlSheetHidden
Else
Thisworkbook.Worksheets("Sheet 1").Visible = xlSheetVisible
End If
Exit Sub ' no need to keep looping, or maybe use Exit For
End If
Next ws
End Sub