Здравствуйте, уважаемые форумчане, очень прошу помочь с макросом, нужно чтобы макросом создавалась динамическая таблица из данных в столбце С, но диапазон заранее не известен, как можно сделать так, чтобы макрос автоматически создавал динамическую таблицу с заголовком, со всеми заполненными ячейками из столбца С?
Здравствуйте, уважаемые форумчане, очень прошу помочь с макросом, нужно чтобы макросом создавалась динамическая таблица из данных в столбце С, но диапазон заранее не известен, как можно сделать так, чтобы макрос автоматически создавал динамическую таблицу с заголовком, со всеми заполненными ячейками из столбца С?gizon
_Boroda_, подскажите пожалуйста, а как подправить макрос ,что бы брал данные для таблицы из диапазона в несколько столбцов? диапазон учитывался только до пустого столбца
_Boroda_, подскажите пожалуйста, а как подправить макрос ,что бы брал данные для таблицы из диапазона в несколько столбцов? диапазон учитывался только до пустого столбцаmicholap_denis
Sub tt() Application.ScreenUpdating = 0 c0_ = 2 r0_ = 2 c_ = 10 On Error Resume Next If Cells(r0_, c_) <> "" Then Cells(r0_, c_).CurrentRegion.Clear End If For i = c0_ To Columns.Count If Cells(r0_, i) = "" Then Exit For Else nr_ = Cells(Rows.Count, i).End(3).Row - r0_ + 1 Cells(r0_, i).Resize(nr_).Copy Cells(r0_, c_ + k_) Cells(r0_, c_ + k_).Resize(nr_).SpecialCells(xlCellTypeBlanks).Delete k_ = k_ + 1 End If Next i ActiveSheet.ListObjects.Add(xlSrcRange, Cells(r0_, c_).CurrentRegion, , xlYes).Name = "Tab" & Timer On Error GoTo 0 Application.ScreenUpdating = 1 End Sub
[/vba]
[vba]
Код
Sub tt() Application.ScreenUpdating = 0 c0_ = 2 r0_ = 2 c_ = 10 On Error Resume Next If Cells(r0_, c_) <> "" Then Cells(r0_, c_).CurrentRegion.Clear End If For i = c0_ To Columns.Count If Cells(r0_, i) = "" Then Exit For Else nr_ = Cells(Rows.Count, i).End(3).Row - r0_ + 1 Cells(r0_, i).Resize(nr_).Copy Cells(r0_, c_ + k_) Cells(r0_, c_ + k_).Resize(nr_).SpecialCells(xlCellTypeBlanks).Delete k_ = k_ + 1 End If Next i ActiveSheet.ListObjects.Add(xlSrcRange, Cells(r0_, c_).CurrentRegion, , xlYes).Name = "Tab" & Timer On Error GoTo 0 Application.ScreenUpdating = 1 End Sub