Удалить столбцы из таблицы, которые имеют только заголовки - PullRequest
0 голосов
/ 22 апреля 2019

У меня есть таблица, которая имеет много столбцов (включая заголовки с автофильтром), и некоторые столбцы содержат только заголовок, и никакие другие данные не следуют внутри этого столбца.Я хочу удалить эти столбцы из моей именованной таблицы.

Ответы [ 2 ]

1 голос
/ 22 апреля 2019

Чтобы удалить столбец, выберите весь столбец электронной таблицы. Затем щелкните правой кнопкой мыши по выбранному столбцу и выберите «Удалить».

enter image description here

Обратите внимание, что нажатие клавиши Delete на клавиатуре приведет к удалению только содержимого, а не к полному удалению столбца.

Будьте осторожны, этот метод удаляет весь столбец электронной таблицы, поэтому данные под таблицей также будут обрабатываться.

0 голосов
/ 22 апреля 2019

вот код для вас, в следующий раз попробуйте что-то кодировать

Public Sub teste()
    Call DeleteTableColumnNull("table")
End Sub
Public Sub DeleteTableColumnNull(ByVal TableObjectName As String)
    Dim table As ListObject
    Dim st As Worksheet
    Dim cols As Range
    Dim col As Range
    Dim rows As Range
    Dim row As Range



    For Each st In ThisWorkbook.Worksheets
        If tableExistInThisSheet(st, TableObjectName) Then
            Set table = st.ListObjects(TableObjectName)
            For Each col In table.Range.Columns
                If Application.WorksheetFunction.CountA(col) = 1 Then
                    col.Delete
                End If
            Next col
        End If
    Next

End Sub


Public Function tableExistInThisSheet(st As Worksheet, TableObjectName As String) As Boolean
On Error GoTo f
    Dim tb As ListObject
    Set tb = st.ListObjects(TableObjectName)
    tableExistInThisSheet = True
    Exit Function
f:

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