|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
10.12.2009, 08:21 | #1 |
Пользователь
Регистрация: 09.12.2009
Сообщений: 22
|
Сортировка по столбцу А? не могу разобраться
Добрый день.
Ну жен совет как отсортировать содержимое строк по данным в столбце А. Данные в стобце "А" могут начинаться с любой буквы русского и латинского алфавита и далее числовое значение от 0 до 999. примерно в таком формате "А-1,А-2,Б-9, Э-16,Ю-2,Ю-3,Ю-24" некоторые строки могут не иметь позиции - их в самый конец. Но отсортировать их нужно в первую очередь по алфавиту, во вторую очередь по цофровому значению после буквы вот файл: Это исходник Последний раз редактировалось Sirius2w; 10.12.2009 в 09:57. |
10.12.2009, 09:17 | #2 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Можно выполнить макрос:
Код:
Чем шире угол зрения, тем он тупее.
|
10.12.2009, 09:36 | #3 |
Пользователь
Регистрация: 09.12.2009
Сообщений: 22
|
SAS888 ;-) большое спасибо , что откликнулись но...
Не совсем так... прошу прощения, может я некорректно сформулировал вопрос порядок сортировки должен выполняться сначала по алфавиту, но внутри дипапзона начинающегося на одну и ту же букву тоже должен быть порядок - по цифрам примерно так А-1,А-2,А-3,.....Б-1,Б-2,Б-3... Эта таблица заполняется автоматически при извлечении данных с файла автокада. В файле автокада может меняться количество блоков с информацией и наименование позиций может быть совсем разным, но все начинаются сначала с буквы (она определяет группу к которой относиться объект) а затем порядковый номер "Т-47" тут буква "т" определяет группу "Тренажеры" "47" определяет порядковый номер тренажера... |
10.12.2009, 09:46 | #4 |
Пользователь
Регистрация: 09.12.2009
Сообщений: 22
|
Вообще как без макросов упорядочить записи типа
А-1 А-10 А-11 А-11 А-12 А-13 А-14 А-15 А-16 А-17 А-18 А-19 А-2 А-20 А-21 А-22 А-23 А-24 А-25 А-26 А-27 А-3 А-4 А-5 А-6 А-7 А-8 А-9 ну и так для каждой буквы алфавита через Сервис=параметры=списки = задать свой новый список неприемлимо, так как однозачного списка нельзя создать из-за постоянно изменяемых данных |
10.12.2009, 11:31 | #5 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
на основании колонки "номер" сформировал дополнительную колонку "сорт" - по ней и сортировать. только это все полумеры:
1.формула написана на основании того, что я увидел в колонке "номер". я даже не пытался охватить все буйство фантазии, на которое способны пользователи при заполнении колонки "номер" 2.формулу надо постоянно разможать вниз по списку (если не установлен режим автозаполнения колонок) Кстати, формула написана так, что если после А появится номер А-101, то он не посортируется между А-10 и А-11, а у А-10 и А-11 появятся дополнительные нолики А-010 и А-011 и т.д. Но это все равно не спасет от пользователей (точнее от их способности вставить туда номер не влезающий в правила). а вообще, мой вам совет: формализуйте правила заполнения колонки "номер", попытайтесь сделать проверку на вводимое
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
10.12.2009, 11:50 | #6 | |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Цитата:
Код:
Чем шире угол зрения, тем он тупее.
|
|
10.12.2009, 12:02 | #7 |
Пользователь
Регистрация: 09.12.2009
Сообщений: 22
|
IgorGO, спасибо, хороший вариант решения!
SAS888 - вы совершенно правильно поняли, 2-й вариант именно то что нужно.!!! ОГРОМНОЕ СПАСИБО! П.С. Я тут еще один способ нарыл - создаем правее столбца "номер" его копию, а еще правее пустой столбец. Далее выделяеме скопированный диапазон "номер" потм в пункте меню "Данные" = "Текст по столбцам..." = "далее" = указываем знак разделяющий буквы и цыфры ( внашем случае "-") = готово. После чего выделяем весь заполненный диапазон и сортируем с условиями "по буквам" "затем по цифрам" |
10.12.2009, 12:25 | #8 |
Пользователь
Регистрация: 09.12.2009
Сообщений: 22
|
А можно еще просьбу? есть столбец с именем "Примечание" в нем заполнены только отдельные строки, они привязаны к конкретной позиции например поз. А-10 в файле.
Можно ли как-то ниже строки с позицией А-10 добавить строку и в ячейку ниже наименования позиции А-10 перенести значение "примечания" этой же позиции тоже проделать со всеми непустыми ячейками столбца "примечание" после чего полностью удалить столбец "примечание" возможно ли это учесть в том макросе, который Вы мне написали? П.С. с меня магарыч ;-) |
10.12.2009, 13:12 | #9 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Так нужно?
Чем шире угол зрения, тем он тупее.
|
10.12.2009, 13:35 | #10 |
Пользователь
Регистрация: 09.12.2009
Сообщений: 22
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
не могу разобраться | Var17 | Общие вопросы Delphi | 6 | 27.03.2010 01:21 |
Не могу разобраться | Zmaxer | Помощь студентам | 24 | 10.10.2009 18:52 |
не могу разобраться | Инспектор ГУЛ | Свободное общение | 7 | 20.09.2009 09:29 |