Не группируются столбцы в таблице
Digital
Дата: Вторник, 30.10.2018, 14:07 |
Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация:
0
±
Замечаний:
0% ±
Excel 2007
Добрый день уважаемые форумчане! В своей работе часто использую сайт для проведения закупок. При скачивании с сайта таблицы закупок, таблица выгружается в не очень читабельном виде. В связи с этим, использую макрос чтобы таблица приобретала более удобный для просмотра вид. Проблема в том что при использовании нижеуказанного макроса, строка №9 не сжимается до нужного размера, а столбцы не группируются. Подскажите пожалуйста, что нужно откорректировать в теле макроса, так чтобы строка №9 сжималась до размера указанного в теле макроса, а выделенные столбцы группировались. [vba]Код
Sub Выгрузка_плана_с_закуп_ск() ' Выгрузка_плана_с_закуп_ск Макрос Cells.Select With Selection.Font .Name = "Times New Roman" .Size = 11 .Strikethrough = False .Superscript = False .Subscript = False .OutlineFont = False .Shadow = False .Underline = xlUnderlineStyleNone .TintAndShade = 0 .ThemeFont = xlThemeFontNone End With Cells.Select With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlDistributed .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext End With Rows("1:7").Select Selection.EntireRow.Hidden = True Rows("9:9").RowHeight = 45 Columns("A:B").Columns.Group Columns("V:W").Columns.Group Columns("I:J").Columns.Group Columns("L:N").Columns.Group ActiveSheet.Outline.ShowLevels ColumnLevels:=1 Rows("10:10").Select Selection.AutoFilter Columns("A:B").ColumnWidth = 8 Columns("C:C").ColumnWidth = 10 Columns("D:D").ColumnWidth = 18.57 Columns("F:F").ColumnWidth = 28 Columns("G:G").ColumnWidth = 40 Columns("H:H").ColumnWidth = 6.57 Columns("I:I").ColumnWidth = 12 Columns("J:J").ColumnWidth = 8 Columns("K:K").ColumnWidth = 8 Columns("L:M").ColumnWidth = 25 Columns("N:N").ColumnWidth = 7 Columns("O:P").ColumnWidth = 19 Columns("Q:Q").ColumnWidth = 10 Columns("R:R").ColumnWidth = 13 Columns("S:S").ColumnWidth = 13 Columns("T:U").ColumnWidth = 18 Columns("V:V").ColumnWidth = 7 Columns("W:W").ColumnWidth = 20 Columns("X:X").ColumnWidth = 10 Cells.Select Selection.Rows.AutoFit Range("A1").Select End Sub
[/vba] Ниже приложил пример файла (таблицы) после использования макроса.
Добрый день уважаемые форумчане! В своей работе часто использую сайт для проведения закупок. При скачивании с сайта таблицы закупок, таблица выгружается в не очень читабельном виде. В связи с этим, использую макрос чтобы таблица приобретала более удобный для просмотра вид. Проблема в том что при использовании нижеуказанного макроса, строка №9 не сжимается до нужного размера, а столбцы не группируются. Подскажите пожалуйста, что нужно откорректировать в теле макроса, так чтобы строка №9 сжималась до размера указанного в теле макроса, а выделенные столбцы группировались. [vba]Код
Sub Выгрузка_плана_с_закуп_ск() ' Выгрузка_плана_с_закуп_ск Макрос Cells.Select With Selection.Font .Name = "Times New Roman" .Size = 11 .Strikethrough = False .Superscript = False .Subscript = False .OutlineFont = False .Shadow = False .Underline = xlUnderlineStyleNone .TintAndShade = 0 .ThemeFont = xlThemeFontNone End With Cells.Select With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlDistributed .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext End With Rows("1:7").Select Selection.EntireRow.Hidden = True Rows("9:9").RowHeight = 45 Columns("A:B").Columns.Group Columns("V:W").Columns.Group Columns("I:J").Columns.Group Columns("L:N").Columns.Group ActiveSheet.Outline.ShowLevels ColumnLevels:=1 Rows("10:10").Select Selection.AutoFilter Columns("A:B").ColumnWidth = 8 Columns("C:C").ColumnWidth = 10 Columns("D:D").ColumnWidth = 18.57 Columns("F:F").ColumnWidth = 28 Columns("G:G").ColumnWidth = 40 Columns("H:H").ColumnWidth = 6.57 Columns("I:I").ColumnWidth = 12 Columns("J:J").ColumnWidth = 8 Columns("K:K").ColumnWidth = 8 Columns("L:M").ColumnWidth = 25 Columns("N:N").ColumnWidth = 7 Columns("O:P").ColumnWidth = 19 Columns("Q:Q").ColumnWidth = 10 Columns("R:R").ColumnWidth = 13 Columns("S:S").ColumnWidth = 13 Columns("T:U").ColumnWidth = 18 Columns("V:V").ColumnWidth = 7 Columns("W:W").ColumnWidth = 20 Columns("X:X").ColumnWidth = 10 Cells.Select Selection.Rows.AutoFit Range("A1").Select End Sub
[/vba] Ниже приложил пример файла (таблицы) после использования макроса. Digital
Сообщение отредактировал Digital - Вторник, 30.10.2018, 14:09
Ответить
Сообщение Добрый день уважаемые форумчане! В своей работе часто использую сайт для проведения закупок. При скачивании с сайта таблицы закупок, таблица выгружается в не очень читабельном виде. В связи с этим, использую макрос чтобы таблица приобретала более удобный для просмотра вид. Проблема в том что при использовании нижеуказанного макроса, строка №9 не сжимается до нужного размера, а столбцы не группируются. Подскажите пожалуйста, что нужно откорректировать в теле макроса, так чтобы строка №9 сжималась до размера указанного в теле макроса, а выделенные столбцы группировались. [vba]Код
Sub Выгрузка_плана_с_закуп_ск() ' Выгрузка_плана_с_закуп_ск Макрос Cells.Select With Selection.Font .Name = "Times New Roman" .Size = 11 .Strikethrough = False .Superscript = False .Subscript = False .OutlineFont = False .Shadow = False .Underline = xlUnderlineStyleNone .TintAndShade = 0 .ThemeFont = xlThemeFontNone End With Cells.Select With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlDistributed .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext End With Rows("1:7").Select Selection.EntireRow.Hidden = True Rows("9:9").RowHeight = 45 Columns("A:B").Columns.Group Columns("V:W").Columns.Group Columns("I:J").Columns.Group Columns("L:N").Columns.Group ActiveSheet.Outline.ShowLevels ColumnLevels:=1 Rows("10:10").Select Selection.AutoFilter Columns("A:B").ColumnWidth = 8 Columns("C:C").ColumnWidth = 10 Columns("D:D").ColumnWidth = 18.57 Columns("F:F").ColumnWidth = 28 Columns("G:G").ColumnWidth = 40 Columns("H:H").ColumnWidth = 6.57 Columns("I:I").ColumnWidth = 12 Columns("J:J").ColumnWidth = 8 Columns("K:K").ColumnWidth = 8 Columns("L:M").ColumnWidth = 25 Columns("N:N").ColumnWidth = 7 Columns("O:P").ColumnWidth = 19 Columns("Q:Q").ColumnWidth = 10 Columns("R:R").ColumnWidth = 13 Columns("S:S").ColumnWidth = 13 Columns("T:U").ColumnWidth = 18 Columns("V:V").ColumnWidth = 7 Columns("W:W").ColumnWidth = 20 Columns("X:X").ColumnWidth = 10 Cells.Select Selection.Rows.AutoFit Range("A1").Select End Sub
[/vba] Ниже приложил пример файла (таблицы) после использования макроса. Автор - Digital Дата добавления - 30.10.2018 в 14:07
_Boroda_
Дата: Вторник, 30.10.2018, 14:16 |
Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 16718
Репутация:
6505
±
Замечаний:
±
2003; 2007; 2010; 2013 RUS
Если ничего не править-переписывать, то просто строки [vba]Код
ActiveSheet.Outline.ShowLevels ColumnLevels:=1 Rows("9:9").RowHeight = 45
[/vba] напишите в самом конце А то Вы сначала выстраиваете высоту 45, а потом автовыслту строки А если править весь макрос, то нужен исходный файл * И не используйте Селекты
Если ничего не править-переписывать, то просто строки [vba]Код
ActiveSheet.Outline.ShowLevels ColumnLevels:=1 Rows("9:9").RowHeight = 45
[/vba] напишите в самом конце А то Вы сначала выстраиваете высоту 45, а потом автовыслту строки А если править весь макрос, то нужен исходный файл * И не используйте Селекты _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Если ничего не править-переписывать, то просто строки [vba]Код
ActiveSheet.Outline.ShowLevels ColumnLevels:=1 Rows("9:9").RowHeight = 45
[/vba] напишите в самом конце А то Вы сначала выстраиваете высоту 45, а потом автовыслту строки А если править весь макрос, то нужен исходный файл * И не используйте Селекты Автор - _Boroda_ Дата добавления - 30.10.2018 в 14:16
Digital
Дата: Вторник, 30.10.2018, 14:30 |
Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация:
0
±
Замечаний:
0% ±
Excel 2007
Добрый день Boroda! Я вас понял Благодарю за помощь. Тема закрыта.
Добрый день Boroda! Я вас понял Благодарю за помощь. Тема закрыта. Digital
Ответить
Сообщение Добрый день Boroda! Я вас понял Благодарю за помощь. Тема закрыта. Автор - Digital Дата добавления - 30.10.2018 в 14:30
_Boroda_
Дата: Вторник, 30.10.2018, 14:42 |
Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 16718
Репутация:
6505
±
Замечаний:
±
2003; 2007; 2010; 2013 RUS
Нет уж, я уже сделал [vba]Код
Sub tt() With Range(Cells(1), Cells(1).SpecialCells(xlLastCell)) With .Font .Name = "Times New Roman" .Size = 11 End With .HorizontalAlignment = xlCenter .VerticalAlignment = xlDistributed Rows("1:7").EntireRow.Hidden = True .Rows.AutoFit End With Columns("A:B").Columns.Group Columns("V:W").Columns.Group Columns("I:J").Columns.Group Columns("L:N").Columns.Group Range("N:N,V:V,H:H").ColumnWidth = 7 Range("A:B,J:K").ColumnWidth = 8 Range("C:C,Q:Q,X:X").ColumnWidth = 10 Range("I:I").ColumnWidth = 12 Range("R:R,S:S").ColumnWidth = 13 Range("E:E").ColumnWidth = 15 Range("T:U").ColumnWidth = 18 Range("O:P,D:D").ColumnWidth = 19 Range("W:W").ColumnWidth = 20 Range("L:M").ColumnWidth = 25 Range("F:F").ColumnWidth = 28 Range("G:G").ColumnWidth = 40 Rows("10:10").AutoFilter Range("A1").Select ActiveSheet.Outline.ShowLevels ColumnLevels:=1 Rows("9:9").RowHeight = 45 End Sub
[/vba]
Нет уж, я уже сделал [vba]Код
Sub tt() With Range(Cells(1), Cells(1).SpecialCells(xlLastCell)) With .Font .Name = "Times New Roman" .Size = 11 End With .HorizontalAlignment = xlCenter .VerticalAlignment = xlDistributed Rows("1:7").EntireRow.Hidden = True .Rows.AutoFit End With Columns("A:B").Columns.Group Columns("V:W").Columns.Group Columns("I:J").Columns.Group Columns("L:N").Columns.Group Range("N:N,V:V,H:H").ColumnWidth = 7 Range("A:B,J:K").ColumnWidth = 8 Range("C:C,Q:Q,X:X").ColumnWidth = 10 Range("I:I").ColumnWidth = 12 Range("R:R,S:S").ColumnWidth = 13 Range("E:E").ColumnWidth = 15 Range("T:U").ColumnWidth = 18 Range("O:P,D:D").ColumnWidth = 19 Range("W:W").ColumnWidth = 20 Range("L:M").ColumnWidth = 25 Range("F:F").ColumnWidth = 28 Range("G:G").ColumnWidth = 40 Rows("10:10").AutoFilter Range("A1").Select ActiveSheet.Outline.ShowLevels ColumnLevels:=1 Rows("9:9").RowHeight = 45 End Sub
[/vba] _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Нет уж, я уже сделал [vba]Код
Sub tt() With Range(Cells(1), Cells(1).SpecialCells(xlLastCell)) With .Font .Name = "Times New Roman" .Size = 11 End With .HorizontalAlignment = xlCenter .VerticalAlignment = xlDistributed Rows("1:7").EntireRow.Hidden = True .Rows.AutoFit End With Columns("A:B").Columns.Group Columns("V:W").Columns.Group Columns("I:J").Columns.Group Columns("L:N").Columns.Group Range("N:N,V:V,H:H").ColumnWidth = 7 Range("A:B,J:K").ColumnWidth = 8 Range("C:C,Q:Q,X:X").ColumnWidth = 10 Range("I:I").ColumnWidth = 12 Range("R:R,S:S").ColumnWidth = 13 Range("E:E").ColumnWidth = 15 Range("T:U").ColumnWidth = 18 Range("O:P,D:D").ColumnWidth = 19 Range("W:W").ColumnWidth = 20 Range("L:M").ColumnWidth = 25 Range("F:F").ColumnWidth = 28 Range("G:G").ColumnWidth = 40 Rows("10:10").AutoFilter Range("A1").Select ActiveSheet.Outline.ShowLevels ColumnLevels:=1 Rows("9:9").RowHeight = 45 End Sub
[/vba] Автор - _Boroda_ Дата добавления - 30.10.2018 в 14:42
Digital
Дата: Вторник, 30.10.2018, 15:35 |
Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 225
Репутация:
0
±
Замечаний:
0% ±
Excel 2007
Boroda! Благодарю
Ответить
Сообщение Boroda! Благодарю Автор - Digital Дата добавления - 30.10.2018 в 15:35