Гость
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Сортировка по 3 параметрам в excel / 8 сообщений из 8, страница 1 из 1
17.11.2014, 20:52
    #38808819
st90
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по 3 параметрам в excel
Есть 3 столбца: улица, дом, квартира
Надо отсортировать так чтобы сначала по улица отсортировались, потом по домам и потом по квартирам.
Дома могут быть типа 5а
Эксель их сортируется как текст от А до Я:
1
2
22
3

А надо по увеличению. Типы менял - не помогает.
Как сделать, не подскажете? Можно ещё access попробовать, если Эксель неумеет...
...
Рейтинг: 0 / 0
17.11.2014, 23:04
    #38808904
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по 3 параметрам в excel
Добавьте для домов столбец, куда формулой впишите выравнивание нулями слева, например:
Код: vbnet
1.
=ПОВТОР("0";10-ДЛСТР(A1))&A1

И отсортируйте по нему (вместо самого столбца домов).

А ещё лучше - просто создавать некий "ключ" сортировки, сразу объединяющий все необходимые вам столбцы - и сортировать по нему. Есть одна тонкость и в этом случае - при объединении/сцепке столбцов с числовыми данными (пусть и преобразованными в текст) надо ещё дополнительно вставлять в конечную строку какой-нибудь разделитель между ними (например, "|").
...
Рейтинг: 0 / 0
17.11.2014, 23:58
    #38808939
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по 3 параметрам в excel
AndreTMДобавьте для домов столбец, куда формулой впишите выравнивание нулями слева, например:не получится. Будет 0005a больше, чем 00006, а надо наоборот.

Нужно первично отсортировать по выделенному числовому значению, а вторично - по изначальной строке
...
Рейтинг: 0 / 0
18.11.2014, 04:45
    #38809002
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по 3 параметрам в excel
Сорри, недодумал...
Усложним формулу (массивная!):
Код: vbnet
1.
{=ПОВТОР("0";10-МИН(ЕСЛИ(ПСТР(A1;СТРОКА($1:$9);1)>"9";СТРОКА($1:$9)-1;ДЛСТР(A1))))&A1}
...
Рейтинг: 0 / 0
18.11.2014, 09:19
    #38809074
st90
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по 3 параметрам в excel
AndreTM, Спасибо.
Но чё-то всё-равно с буквами не работает да и буквы бывают через пробел (можно конечно удалить пробелы).
В общем и так сойдёт пока, точность не нужна такая
...
Рейтинг: 0 / 0
18.11.2014, 11:23
    #38809222
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по 3 параметрам в excel
Введите четвёртую колонку, и переместите в неё букву (или иной нечисловой хвост), если она имеется, а в третьей оставьте только числовое значение номера (например, для дома с номером 5/9 в третьей колонке оставляем "5", а в четвёртую выносим "/9").
...
Рейтинг: 0 / 0
26.11.2014, 01:12
    #38816818
Сортировка по 3 параметрам в excel
AkinaВведите четвёртую колонку, и переместите в неё букву (или иной нечисловой хвост), если она имеется, а в третьей оставьте только числовое значение номера (например, для дома с номером 5/9 в третьей колонке оставляем "5", а в четвёртую выносим "/9").Чем будем выносить, если кол-во строк больше... ну скажем 10000? А для номеров типа 5a, 19б и т.д. придется еще и длинную формулу написать, или в экселе уже можно строки просто разбивать регулярными выражениями?
...
Рейтинг: 0 / 0
26.11.2014, 09:15
    #38816935
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка по 3 параметрам в excel
микрозайацЧем будем выноситьМакросом! Написать - дело пяти минут (получится что-то типа)
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Sub MySplit()
Dim OneCell As Range
Dim Head As String, Tail As String
Const Digits As String - "0123456789"
For Each OneCell In Range("A1:A10000")
  Tail = OneCell.Value & ""
  Head = ""
  Do While Instr(Digits, Left(Tail,1)) > 0
    Head = Left(Tail,1)
    Tail = Mid(Tail,2)
  Loop
  OneCell.Value = Head
  Range("B" & OneCell.Row).Value = Tail
Next
End Sub


Запустить один раз, предварительно создав доп. колонку, затем со спокойной душой удалить. И всё.
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Сортировка по 3 параметрам в excel / 8 сообщений из 8, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]