Как исключить объединенные строки в критериях IF оператора CountA? - PullRequest
1 голос
/ 23 октября 2019

У меня есть оператор CASE, который пропускает блок столбцов, а затем n оператор IF, который скрывает столбцы, если worksheetfunction.COUNTA <2. Я просто хотел скрыть столбцы только с заголовками и без значений в столбце. Дело в том, что есть блок столбцов («P: U»), которые имеют объединенный всеобъемлющий заголовок в строке 1, в то время как обычные заголовки находятся в строке 2, данные начинаются со строки 3. </p>

Я пыталсянастройте Set R = Cells(1,i).EntireColumn на Set R = Cells(2,i).EntireColumn так, чтобы он применял только оператор IF из 2-й строки - вниз, но это работает неправильно. Оператор по-прежнему показывает один столбец из столбцов P: U из-за объединенных ячеек в строке 1.

Option Explicit
    Sub ColumnHider()

        Dim wf As WorksheetFunction
        Dim i As Long, R As Range

        Set wf = Application.WorksheetFunction

        For i = 1 To 44

            Select Case i

            Case 9 To 14

            Case Else

                Set R = Cells(2, i).EntireColumn <---problem area

                If wf.CountA(R) < 2 Then R.Hidden = True

            End Select

        Next i

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