Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 27.12.2007, 14:03   #31
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

В предложенном файле допустимы любые спец-символы для задания поиска. Наличие начальных пробелов, наоборот специально игнорируется. Чтобы иметь такую возможность, нужно в коде убрать оператор Trim(...).
Например, x = LCase(Trim(TextBox1.Text)) исправить на x = LCase(TextBox1.Text) и т. д. Тогда в строке для поиска можно будет задать: " [А-Я]*" (пробел, [любой символ от А до Я] *), или: " [А-Я]*" (два пробела, [любой символ от А до Я] *) В первом случае отберутся все строки начинающиеся с одного пробела, затем любой символ из указанного диапазона, затем - что угодно. Во втором - строки начинающиеся с двух пробелов, затем символ и т. д.

Что касается VBA. Очень советую освоить. Тем более, если есть навыки Бейсика. В Excel есть встроенный макроредактор. Попробуйте записать какие-нибудь действия в макрос, а затем разобраться в полученном коде. Попробовать самому что-нибудь написать и т. д. Понравится - читайте книги, примеры, help-ы и т. д. Обращайтесь на форум. Здесь всегда помогут.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Старый 27.12.2007, 14:08   #32
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Что касается Вашей конкретной задачи - объясните по подробней:
Что, где, как расположено? Что нужно сделать? В каком виде нужен результат? (ненужное удалить? скрыть? переместить?)
P.S. Как раз можно и сравнить: решить средствами Excel, и с помощью VBA.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Старый 27.12.2007, 14:34   #33
Romuald
Форумчанин
 
Регистрация: 12.11.2007
Сообщений: 209
По умолчанию

SAS888 !
Спасибо за помощь !
С наступающим Новым Годом !
У нас в Риге снега нет .. но... светлого (снежного) Вам нового года, и охапку удачи, здоровья побольше, и елку со снегуркой на даче
Romuald вне форума
Старый 28.12.2007, 10:48   #34
rexec
Пользователь
 
Аватар для rexec
 
Регистрация: 27.12.2007
Сообщений: 73
По умолчанию

В таблице списки организованы таким образом, что записи самого верхнего уровня записаны сразу без пробела в начале. Записи более низкого уровня сделаны с отступом, но в качестве отступа были использованы пробелы, понимаю, что глупо, но все же. Таким образом, записи второго уровня сделаны с отступом в 1 пробел, третьего - 2 пробела и т.д. Необходимо, чтобы осталась и сама исходная таблица (в ней 12000 записей) и появились отфильтрованные данные записей второго уровня (с 1 пробелом). Я пытался использовать расширенный фильтр, в качетсве условия использовал " *". Но тогда фильтр "пропускает" записи и с 2-мя и с 3-мя пробелами. Возможно если бы возможно было сделать условие, когда сквозь фильтр не проходили записи, в которых в качестве 2-го символа используется пробел, тогда сработало бы. Но я сколько ни искал, так и не нашел как это сделать.
rexec вне форума
Старый 28.12.2007, 11:22   #35
Alkaline
Пользователь
 
Регистрация: 22.11.2007
Сообщений: 79
По умолчанию

rexec, без макросов это можно сделать, например, так.

Во-первых, уточним, что именно нужно: отсортировать (упорядочить типа как по алфавиту) или отфильтровать (скрыть ненужные, оставить видимыми нужные). Так, сортировка работает без проблем: сначала пойдут надписи с двумя пробелами, потом с одним...

Далее, если нужно фильтровать, то вот так: вводим дополнительный столбец (например B, если список в A), с формулой вида =A2 (в ячейку B2, а дальше протягиваем в каждую ячейку), ставим автофильтр по строке с заголовками, в ниспадающем меню фильтра над вспомогательным столбцом выбираем Условие, в параметрах "Начинается с..." и два пробела в поле знаков.

Почему-то для обыкновенных значений, введенных, а не полученных по формуле, Excel не рассматривает начальные пробелы в ячейках (типа, умный). Из-за этого и нельзя было обойтись без вспомогательного столбца...

Может, я что-то упустил? Или опять "бага типа фича"?
Alkaline вне форума
Старый 28.12.2007, 11:40   #36
rexec
Пользователь
 
Аватар для rexec
 
Регистрация: 27.12.2007
Сообщений: 73
По умолчанию

Все, сработало и первый, и второй вариант! Ну первый, конечно, я пропарился, сразу не дошло. А второй - интересное замечание. Спасибо всем.
P.S. А макросы все-таки поизучаю, интересная штука, как-то раньше не придавал значения
rexec вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отбор записей по введенным буквам irr33 Microsoft Office Access 4 17.06.2008 19:31
Как сделать отбор нужно информации TaLi4 БД в Delphi 1 09.06.2008 16:27
Отбор в RichEdit photozaz Общие вопросы Delphi 4 26.05.2008 08:48
Отбор по двум полям MPa БД в Delphi 4 06.02.2008 20:14