Цикл по описанию случая - PullRequest
0 голосов
/ 05 октября 2018

Я пытаюсь выбрать несколько листов и показать все столбцы одновременно.Я использую Case Study.

Мой сценарий успешно выполняется, однако он пропускает то, что я хочу сделать "Columns.EntireColumn.Hidden=False.

Я уверен, что что-то упускаю, и любая помощь будет признательна!Я написал дело в несколько строк, и я предполагаю, что это может иметь какое-то отношение к проблеме.Ниже мой код:

For Each ws In Worksheets
    Select Case ws.Name
    Case "Customer Service", "Document Production & Status", "Employment", _
         "Family & Business", "Humanitarian", "Refugee, Asylum, & DACA", _
         "NSC", "I-102", "I-824", "I-121 AP", "I-131 TD", "I-765", "I-485 EB", _
         "I-104", "I-140 Prem", "I-601A", "I-129", "I-129 Prem", "I-129F", _
         "I-130 IR", "I-130 All Other", "I-539", "I-360", "I-918", "I-192", _
         "I-821 TPS", "Wvrs (I-212)", "Wvrs (I-601)", "I-131 D", "I-485 Asy", _
         "I-485 Ref", "I-730", "I-765 D", "I-765 D Renewal", "I-765 D Renewal ELIS", _
         "I-821 D", "I-821 D Renewal", "I-821 D Renewal ELIS", "I-751", "N-565"

        Columns.EntireColumn.Hidden = False
    End Select
Next

1 Ответ

0 голосов
/ 05 октября 2018

Это должно помочь:

Sub HideColumns()

    Dim wb As Workbook, ws As Worksheet, shts As Variant, Check As Variant

    Set wb = ThisWorkbook

    'store all your worksheet names on this array
    shts = Array("Customer Service", "Document Production & Status", "Employment", _
         "Family & Business", "Humanitarian", "Refugee, Asylum, & DACA", _
         "NSC", "I-102", "I-824", "I-121 AP", "I-131 TD", "I-765", "I-485 EB", _
         "I-104", "I-140 Prem", "I-601A", "I-129", "I-129 Prem", "I-129F", _
         "I-130 IR", "I-130 All Other", "I-539", "I-360", "I-918", "I-192", _
         "I-821 TPS", "Wvrs (I-212)", "Wvrs (I-601)", "I-131 D", "I-485 Asy", _
         "I-485 Ref", "I-730", "I-765 D", "I-765 D Renewal", "I-765 D Renewal ELIS", _
         "I-821 D", "I-821 D Renewal", "I-821 D Renewal ELIS", "I-751", "N-565")

    For Each ws In wb.Worksheets
        Check = 0
        Check = Application.Match(ws.Name, shts, 0) 'application won't raise an error if can't find the result, instead will give check an error value
        If Not IsError(Check) Then ws.Columns.EntireColumn.Hidden = False
    Next ws

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...