Страницы: 1
RSS
Сортировка чисел по возрастанию
 
Здравствуйте. Подскажите пожалуйста, можно ли одним выделением отсортировать числа по возрастанию только по строкам? Я могу по одной строке это делать, но когда таких строк больше 3 тысяч, то это просто "нечто". По столбцам все выходит отлично. В примере только часть массива чисел.  
Изменено: Imbo - 16.01.2015 13:07:39 (загрузка файла )
 
Как вариант потом скопировать вставить
Лень двигатель прогресса, доказано!!!
 
запросто
 
Ух ты!
Спасибо огромное!
Немного поторопился -) А чуть поподробнее можно как Вы это сделали? Чет в новом фале не получается у меня. Вроде пишу формулу и ...
МатросНаЗебре, понял. Спасибо еще раз.
Изменено: Imbo - 16.01.2015 14:21:47
 
Насколько я понимаю средствами только икселя это сделано сложно, то есть муторно.
Как вариант можно написать макрос, например основанный на вот таком принципе:
Копируем нужный диапазон на другой лист с транспонированием, сортируем, вырезаем сортированное и вставляем транспонированием в исходное место.
Второй вариант занести числа в массив ВБА, отсортировать этот массив, и вставить обратно.
Все достаточно тривиально.
Выяснилось, что можно формулами. Хех. Надо меньше заниматься кодингом :)
Изменено: Все_просто - 16.01.2015 13:18:12
С уважением,
Федор/Все_просто
 
=НАИМЕНЬШИЙ(,1) ищет минимальное значение, =НАИМЕНЬШИЙ(,2) ищет второе наименьшее значение. В качестве аргумента использую номер столбца от 1 до 7. Вроде всё.
 
Можно и макросом, если строк много
Скрытый текст
 
Михаил С.,
Вечер добрый! Скажите, а что надо в макросе изменить чтобы при хаотичном вводе данных, при запуске макроса, данные оставались в тех же ячейках, но распределялись по возрастанию(убыванию). Т.е. не создавая дублирующие столбцы.
Спасибо
Умные люди — это те, которые работают с людьми умнее их самих. (С)Р.Кийосаки
 
Ronin71, может так
Код
Sub bb()
Dim r As Range
  Application.ScreenUpdating = False
  For Each r In ActiveSheet.UsedRange.Rows
    r.Sort r.Cells(1), xlAscending, Orientation:=xlLeftToRight
  Next
  Application.ScreenUpdating = True
End Sub
 
Казанский,
Спасибо за попытку, но этот макрос собирает данные со всего листа, а не с каждой строчки. Не совсем то, что ожидал. Или я что-то не так сделал. Но все равно спасибо!!!
Вопрос по-прежнему открыт...
Умные люди — это те, которые работают с людьми умнее их самих. (С)Р.Кийосаки
 
Ronin71, выражайтесь понятнее: что такое "хаотичный ввод данных", "собирает данные со всего листа"? Приложите пример.
Макрос из #9 делает то же, что макрос из #7, только на месте - Вы разве не этого хотели?
 
Прошу прощения, Казанский, в начале не разобрался до конца. Теперь разобрался. Всё работает корректно!!!
Спасибо огромное
Удачи
Умные люди — это те, которые работают с людьми умнее их самих. (С)Р.Кийосаки
Страницы: 1
Читают тему
Наверх