1

Есть ли способ сгруппировать рабочие листы в Excel 2010, чтобы не все вкладки были видны сразу? В основном, чтобы они могли быть расширены и сведены к минимуму по мере необходимости.

У меня есть несколько книг Excel с довольно большим количеством вкладок. И это вроде боли прокручивать, чтобы найти конкретный лист.

1 ответ1

0

Здесь я что-то взбил, модифицирую как хочешь. Это может быть намного короче, но вы поняли идею.

Вставьте поле со списком (на мастер-лист, мой называется "контроль"), назначьте ему список, а затем поместите этот макрос в Visual Basic. Группируйте как хотите, убедитесь, что один лист всегда виден, и оставьте кейс, чтобы показать все.

Sub DropDown1_Change()

With ActiveSheet.Shapes(Application.Caller)
        Select Case .ControlFormat.ListIndex

        Case 1
            Sheets("Control").Visible = xlSheetVisible
            Sheet2.Visible = xlSheetVisible
            Sheet3.Visible = xlSheetVisible
            Sheet4.Visible = xlSheetHidden
            Sheet5.Visible = xlSheetHidden
            Sheet6.Visible = xlSheetHidden
            Sheet7.Visible = xlSheetHidden
            Sheet8.Visible = xlSheetHidden
            Sheet9.Visible = xlSheetHidden
            Sheet10.Visible = xlSheetHidden
            Sheet11.Visible = xlSheetHidden

        Case 2
            Sheets("Control").Visible = xlSheetVisible
            Sheet2.Visible = xlSheetHidden
            Sheet3.Visible = xlSheetHidden
            Sheet4.Visible = xlSheetVisible
            Sheet5.Visible = xlSheetVisible
            Sheet6.Visible = xlSheetHidden
            Sheet7.Visible = xlSheetHidden
            Sheet8.Visible = xlSheetHidden
            Sheet9.Visible = xlSheetHidden
            Sheet10.Visible = xlSheetHidden
            Sheet11.Visible = xlSheetHidden

        Case 3
            Sheets("Control").Visible = xlSheetVisible
            Sheet2.Visible = xlSheetHidden
            Sheet3.Visible = xlSheetHidden
            Sheet4.Visible = xlSheetHidden
            Sheet5.Visible = xlSheetHidden
            Sheet6.Visible = xlSheetVisible
            Sheet7.Visible = xlSheetVisible
            Sheet8.Visible = xlSheetHidden
            Sheet9.Visible = xlSheetHidden
            Sheet10.Visible = xlSheetHidden
            Sheet11.Visible = xlSheetHidden

        Case 4
            Sheets("Control").Visible = xlSheetVisible
            Sheet2.Visible = xlSheetHidden
            Sheet3.Visible = xlSheetHidden
            Sheet4.Visible = xlSheetHidden
            Sheet5.Visible = xlSheetHidden
            Sheet6.Visible = xlSheetHidden
            Sheet7.Visible = xlSheetHidden
            Sheet8.Visible = xlSheetVisible
            Sheet9.Visible = xlSheetVisible
            Sheet10.Visible = xlSheetHidden
            Sheet11.Visible = xlSheetHidden

        Case 5
            Sheets("Control").Visible = xlSheetVisible
            Sheet2.Visible = xlSheetHidden
            Sheet3.Visible = xlSheetHidden
            Sheet4.Visible = xlSheetHidden
            Sheet5.Visible = xlSheetHidden
            Sheet6.Visible = xlSheetHidden
            Sheet7.Visible = xlSheetHidden
            Sheet8.Visible = xlSheetHidden
            Sheet9.Visible = xlSheetHidden
            Sheet10.Visible = xlSheetVisible
            Sheet11.Visible = xlSheetVisible

        Case 6
        For Each ws In Worksheets
        ws.Visible = xlSheetVisible

        Next
        End Select

    End With
End Sub

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .