Здравствуйте. Возможно ли макросом выполнить сортировку столбца хотя бы в одном режиме АЯ изначально обозначив в ручную сортируемый столбец, то есть программная сортировка произвольно выбранного столбца в ручную.
Здравствуйте. Возможно ли макросом выполнить сортировку столбца хотя бы в одном режиме АЯ изначально обозначив в ручную сортируемый столбец, то есть программная сортировка произвольно выбранного столбца в ручную.segail
Pelena, Да тут все просто, пользователь сам выбирает какой столбец необходимо сортировать, выделяет необходимый столбец с первой строки (первая строка всегда заголовок) произвольно по вертикали и программно выполняет сортировку, например кликом по кнопке.
Pelena, Да тут все просто, пользователь сам выбирает какой столбец необходимо сортировать, выделяет необходимый столбец с первой строки (первая строка всегда заголовок) произвольно по вертикали и программно выполняет сортировку, например кликом по кнопке.segail
Сообщение отредактировал segail - Суббота, 02.06.2018, 12:56
Pelena, Да за был, если это важно, то первая строка это всегда заголовок и выделение всегда идет от первой строки. Пример того как выделяется столбец https://yadi.sk/i/y1MWOzSu3Wt3Ft
Pelena, Да за был, если это важно, то первая строка это всегда заголовок и выделение всегда идет от первой строки. Пример того как выделяется столбец https://yadi.sk/i/y1MWOzSu3Wt3Ftsegail
Сообщение отредактировал segail - Суббота, 02.06.2018, 13:02
Вы не ответили на мой вопрос: столбец надо сортировать автономно или остальные столбцы (Масло, например) тоже должны участвовать в сортировке?
И да, чем не устраивает встроенная кнопка АЯ?
Вот такой макрос сортирует таблицу по выделенному столбцу [vba]
Код
Sub SortCase() With ActiveSheet.Sort .SortFields.Clear .SortFields.Add Key:=Selection.Cells(1, 1), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal .SetRange Selection.CurrentRegion .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End Sub
[/vba]
Вы не ответили на мой вопрос: столбец надо сортировать автономно или остальные столбцы (Масло, например) тоже должны участвовать в сортировке?
И да, чем не устраивает встроенная кнопка АЯ?
Вот такой макрос сортирует таблицу по выделенному столбцу [vba]
Код
Sub SortCase() With ActiveSheet.Sort .SortFields.Clear .SortFields.Add Key:=Selection.Cells(1, 1), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal .SetRange Selection.CurrentRegion .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End Sub
Pelena, Встроенная кнопка АЯ устраивает и ЯА тоже бы устроила если бы можно было бы программно кликая по одной кнопки чередовать сортировку выбирая оптимальный вариант чтобы не спускаться вниз по таблицы, но для того чтобы отсортировать в ручную нужный столбец, необходимо выполнить последовательно ряд действий: 1. Снять защиту листа (лист защищен). 2. Выделить столбец 3. При необходимости перейти в раздел «Данные». 4. Кликнуть по нужной сортировки. 5. Выбрать в диалоговом окне «Сортировать в пределах указанного выделения». 6. Произвести сортировку. 7. Установить защиту листа. Согласитесь, что выделить одним кликом диапазон, а вторым отсортировать программно более мобильно по отношению к выше перечисленному. Ни что не участвует в сортировки кроме выделенного столбца, они независимы, в противном случае можно было бы применить фильтр.
Код работает, выполняет то что и необходимо. Благодарствую от души!!!
Pelena, Встроенная кнопка АЯ устраивает и ЯА тоже бы устроила если бы можно было бы программно кликая по одной кнопки чередовать сортировку выбирая оптимальный вариант чтобы не спускаться вниз по таблицы, но для того чтобы отсортировать в ручную нужный столбец, необходимо выполнить последовательно ряд действий: 1. Снять защиту листа (лист защищен). 2. Выделить столбец 3. При необходимости перейти в раздел «Данные». 4. Кликнуть по нужной сортировки. 5. Выбрать в диалоговом окне «Сортировать в пределах указанного выделения». 6. Произвести сортировку. 7. Установить защиту листа. Согласитесь, что выделить одним кликом диапазон, а вторым отсортировать программно более мобильно по отношению к выше перечисленному. Ни что не участвует в сортировки кроме выделенного столбца, они независимы, в противном случае можно было бы применить фильтр.
Код работает, выполняет то что и необходимо. Благодарствую от души!!!segail
Pelena, Поторопился я с ликованием, еще кое-какие нюансы просматриваются по отношению к ручной сортировки, программно не сортируются данные находящиеся между строчными пустотами.
Pelena, Поторопился я с ликованием, еще кое-какие нюансы просматриваются по отношению к ручной сортировки, программно не сортируются данные находящиеся между строчными пустотами.segail