powered by simpleCommunicator - 2.0.27     © 2024 Programmizd 02
Map
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Сортировка внутри ячейки EXCEL
25 сообщений из 51, страница 1 из 3
Сортировка внутри ячейки EXCEL
    #40100091
ВладимирВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет!
Есть таблица с загруженными данными.
Возможно ли отсортировать значения в ячейках и занести их в другой столбец?

Пример данных:
R65, R79, R1, R2,
R20, R37, R51,
R28, R38, R43, R52, R57, R66, R71, R80,
R36, R50, R64, R78, R16,
R7, R13, R22,
R21,
R9, R11, R12, R18, R19,
R29, R44, R58, R72, R15, R17,
R3, R25, R32, R33, R40, R46, R47, R54, R60, R61, R68, R74, R75, R8, R5, R6,

Буду благодарен любым советам.
Файл прилагаю.
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100135
Serg197311
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А надо формулами или на vba можно?
Формулами - не знаю,
на vba сделал бы цикл и использовал например функцию split....
Получил бы массив значений - а дальше - хоть сортируй, хоть в любой столбец вставляй. Правда, для сортировки пришлось бы еще одну функцию на vba написать...
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100173
ВладимирВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Способ может быть любой. Мне главное - задачу решить. Получить во втором столбце отсортированные данные. В экселе я разбираюсь неплохо, но насколько я понял формулами это вряд ли можно сделать, по крайней мере я способа не нашел. На просторах инета нашел похожий пример: https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=1&TID=72769. Но, к сожалению, VBA не знаю, и как его применить не представляю. Буду очень признателен, если кто-то сможет мне помочь.
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100185
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: vbnet
1.
2.
3.
public function sort_csv (src as string) as string
sort_csv = join(sort(split(src, ',')), ',')
end function


где sort() - это любая функция сортировки строкового массива. Хоть пузырьком...
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100186
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina
строкового массива
не факт, что ТС нужно сортировать по возрастанию строк, скорее всего захочет по возрастанию чисел ))
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100187
ВладимирВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Эх, знать бы как это к моим данным прицепить.. Я же писал с VBA не знаком к сожалению... Формулы любой сложности пишу без проблем, на том мои знания заканчиваются. Если возможно прицепить это к моему примеру и получить готовый результат. Буду весьма признателен.
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100189
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вообще, это задача одноразовая или нужно именно регулярно делать? Обязательно прям автоматизировать?
Может проще "текст по столбцам" да и отсортировать средствами экселя?
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100195
ВладимирВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Мы формируем списки деталей для наших радиомонтажников. Им удобно, когда список идет по возрастанию. R1, R2, R5, R10 и тд. Когда они все вперемежку, им неудобно, они тратят больше времени. Список деталей формируется и разных баз и в зависимости от модификации изделия, это я все уже сделал. Осталось сделать последний штрих - отсортировать собранные данные. И поскольку стандартными средствами то сделать не получается - возникла данная проблема.
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100197
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирВ
R1, R2, R5, R10
значит точно сортировка не по алфавиту...
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100201
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X5X6 X9X10 X13X14 X17X18
а вот такая штука из примера как должна быть отсортирована?
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100205
ВладимирВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Конечно наверно можно и вручную. Можно и список деталей вручную написать. Написана достаточно сложная таблица с подвязкой кучи баз. Все отлажено и прекрасно работает. Выбирается базовая модель и все нужные доп. модули. Прекрасно формируется список нужных элементов. Брать и что-то доделывать ручками, можно, но унизительно. Хотелось бы вишенку на торте.
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100206
ВладимирВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Эта штука отсортирована правильно. По первым буквоцифрам.
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100210
ВладимирВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну вот конкретный пример:

R30, R31, R45, R59, R73, R35, R49, R63, R77

Номера позиций идут вразнобой.

Надо по порядку вот так:

R30, R31, R35, R45, R49, R59, R63, R73, R77
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100211
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сортировка по цифре и числу - это не одно и то же
А что такое буквоцифра - вообще не ясно.

То есть нужно отсортировать
1) по буквам и другим символам до ближайшей цифры по алфавиту
2) по числу, взятому из цифр до ближайшего нецифрового символа
3) все, что после последней цифры - отбрасывается и не участвует в сортировке

Правильное ТЗ?
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100215
ВладимирВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Согласитесь, человеку гораздо легче найти нужный элемент в списке, когда он упорядочен. Когда все элементы перемешаны, а список довольно длинный - то занимает много времени и ведет к возникновению ошибок. На начальном этапе нужный список формируется из разных баз. Конечно получается просто массив данных без всякой сортировки. Но любому человеку легче и приятней работать с отсортированным списком.
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100217
ВладимирВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В пределах строки все элементы начинаются на одну букву.
Значит, как я понимаю, нужно отсортировать по цифрам, идущим после букв.
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100219
ВладимирВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В общем случае букв может быть не одна, а несколько, например
VD1, VD2, VD3, VD4, VD5, VD6, VD8, VD12, VD14, VD18, VD20, VD24, VD26, VD10, VD11, VD16, VD17, VD22,
Я бы сделал так.
В пределах строки отрезаем буквы, сортируем оставшиеся цифры и приклеиваем буквы обратно.
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100223
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирВ
Отрезаем буквы
если я отрежу буквы из вышеуказанного примера, то получится
56 910 1314 1718именно так надо?

то есть, к примеру X9X105 будет больше, чем X13X14
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100225
ВладимирВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Такой вариант сортируем по первым букво-цифрам, то есть берем строку

X5X6, X9X10, X13X14, X17X18

И смотрим на первые буквоцифры:

Х5..., Х9..., Х13.., Х17

Видим, что она отсортирован правильно, сортировка не требуется.
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100227
ВладимирВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да и так вроде очевидно, что все цифры идут по возрастанию, сортировка не нужна.
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100233
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro
Akina
строкового массива
не факт, что ТС нужно сортировать по возрастанию строк, скорее всего захочет по возрастанию чисел ))

Какая разница? как надо, так пусть и сортирит. Всё одно эту функцию сортировки тоже писАть.
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100234
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирВ
Такой вариант сортируем по первым букво-цифрам, то есть берем строку

X5X6, X9X10, X13X14, X17X18

И смотрим на первые буквоцифры:

Х5..., Х9..., Х13.., Х17

Видим, что она отсортирован правильно, сортировка не требуется.
то есть если по результату будет
X13X14 X13X9 X13X1
это нормально, так?
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100237
ВладимирВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
то есть если по результату будет
X13X14 X13X9 X13X1
это нормально, так?

Это как так?
Я же писал.
X5X6, X9X10, X13X14, X17X18
В каждом элементе берем первые буквы и цифры, имеем:
Х5, Х9, Х13, Х17
Видим, что массив уже упорядочен по возрастанию элементов.
Сортировка не требуется.
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100239
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я пытаюсь выяснить алгоритм сортировки. Причем я предложил даже ТЗ, но ты его не подтвердил.

Ты говоришь.
ВладимирВ
Такой вариант сортируем по первым букво-цифрам
я говорю, в результате такого алгоритма в зависимости от исходных данных может получиться вот так. Это нормально? Все хорошо?
...
Рейтинг: 0 / 0
Сортировка внутри ячейки EXCEL
    #40100242
ВладимирВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, по-моему ТЗ правильное.
Следуя ему все строки должны сортироваться верно.
Только по-моему первый пункт лишний, ибо в пределах всегда одной строки идет перечень элементов,
у которых начальные буквы одинаковые, так что сортировка по первым буквам не требуется.
...
Рейтинг: 0 / 0
25 сообщений из 51, страница 1 из 3
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Сортировка внутри ячейки EXCEL
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали тему (0):
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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