Nityananda Das Ответов: 1

Как скрыть столбец в листе excel


Я не могу скрыть столбец в листе excel...я попробовал следующий код.пожалуйста, помогите мне

Что я уже пробовал:

Public Function setHeaderColumns(ByVal pck As ExcelPackage, ByVal columns As IEnumerable(Of ExcelEntity), ByVal WorksheetName As String) As ExcelPackage
            'create worksheet object
            Dim ws As ExcelWorksheet
            If (pck.Workbook.Worksheets.Count > 0) Then
                ws = pck.Workbook.Worksheets(WorksheetName)
            Else
                ws = pck.Workbook.Worksheets.Add(WorksheetName)
            End If
            Dim ColumnIndex As Integer = 1
            'set the name, color or hide the columns in excel
            For Each col As ExcelEntity In columns
                Dim excelColumn As ExcelColumn = ws.Column(ColumnIndex)
                ws.Column(ColumnIndex).Hidden = Not col.isActive

                'excelColumn.Hidden = Not col.isActive
                ws.Cells(1, ColumnIndex).Value = col.fieldText
                ws.Cells(1, ColumnIndex).Style.Font.Bold = True
                ws.Cells(1, ColumnIndex).Style.Font.Color.SetColor(Color.Black)
                If col.isRequired Then
                    ws.Cells(1, ColumnIndex).Style.Font.Color.SetColor(Color.Red)
                End If
                ws.Column(ColumnIndex).Width = 35
                ColumnIndex += 1
            Next
            Return pck
        End Function

1 Ответов

Рейтинг:
1

Michael_Davies

Попробуй:

ws.Column(ColumnIndex).EntireColumn.Hidden = Not col.isActive


Если это не работает напрямую, вам, возможно, придется сначала создать выделение и применить столбец .EntireColumn.Скрытый для выбора, один из странных вариантов поведения VBA.

Самый простой способ найти код для задач в Excel-это записать макрос, выполняющий задачу, а затем посмотреть на сгенерированный код и применить его в своем коде.