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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.02.2011, 10:21   #1
bukrew
Новичок
Джуниор
 
Регистрация: 22.02.2011
Сообщений: 2
По умолчанию Удаление строчек по имеющимся словам

Добрый день.
Помогите решить проблему.
Есть Microsoft Office Excel 2003. В файле 123.csv имеется 10 столбиков. 4 последних столбика содержат различные рубрики, при чём в каждом из 4 последних столбиках возможно повторение рубрики.
Имеется порядка 10000 строчек, в каждой из которых есть в последних 4 столбиках рубрики
К примеру одна строчка может содержать в последних 4 столбиках; стол (1 столбик) стул(2 столбик) кровать (3 столбик) чайник (4 столбик)
Следующая строчка может содержать в последних 4 столбиках; стул (1 столбик) стол(2 столбик) кровать (3 столбик) чайник (4 столбик)

Нужно сделать так, чтобы все строчки, которые содержат заданную рубрику (к примеру стол) удалялись полностью, т.е. полностью строчка со всеми 10 столбиками в ней.

Помогите умные люди. Голова уже пухнет, а завтра 23, охото отдохнуть.
bukrew вне форума Ответить с цитированием
Старый 22.02.2011, 10:29   #2
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Букв много, а примера нет:-(
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 22.02.2011, 10:32   #3
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

Проще всего удалить строки макросом:
http://excelvba.ru/code/ConditionalRowsDeleting

Как сделать это вручную - не придумал. Если кто знает - подскажите.
(т.е. как найти через Ctrl + F и выделить все найденные ячейки, я знаю, но как потом удалить все строки, в которых выделена хотя бы одна ячейка, - вот до этого не додумался.)
EducatedFool вне форума Ответить с цитированием
Старый 22.02.2011, 10:35   #4
bukrew
Новичок
Джуниор
 
Регистрация: 22.02.2011
Сообщений: 2
По умолчанию

|-1--|-2-|-3-|-4-|-5-|-6-|-7--|-8---|-9-----|-10---|

|пам|рам|245|743|93|оцу|стол|стул|к ровать|диван|

|рам|пам|245|438|73|оцу|стул|стол|к ровать|диван|

|рак|пат|125|838|23|оцу|обои|стол|к ровать|диван|

Нужно чтобы удалились все строчки , которые имеют слово "СТУЛ"
bukrew вне форума Ответить с цитированием
Старый 22.02.2011, 10:35   #5
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Проще обработать скриптом как текстовый файл - переложить в новый файл все строки (по одной), которые не содержат слово "стул" вообще (если это возможно) или проверять именно эти части строки по Split().
Нужен такой код? Давайте пример.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 22.02.2011, 10:35   #6
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Это достаточно простой макрос, типа:
Для каждого из нужных столбцов делаем автофильтры с условиями "стол" или "стул", а также "кровать" или "чайник". При каждом применении автофильтра, удаляем видимые строки.
Будет пример - будет и конкретный ответ.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 22.02.2011, 10:36   #7
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

Можно в отдельном столбце (например, в 12-м) прописать формулу типа этой:

Код:
  Ячейка: L1      Формула  (стиль A1):   =СЧЁТЕСЛИ($G1:$J1;"стул")
                  Формула  (стиль R1C1): =СЧЁТЕСЛИ(RC7:RC10;"стул")
потом автофильтром по этому столбцу оставить только строки, в которых число больше нуля, а потом удалить отфильтрованные строки, и снять автофильтр.

Это если хочется обойтись без макросов.
EducatedFool вне форума Ответить с цитированием
Старый 22.02.2011, 10:40   #8
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Цитата:
как найти через Ctrl + F и выделить все найденные ячейки, я знаю
А я не знаю... Подскажи.
Цитата:
как потом удалить все строки, в которых выделена хотя бы одна ячейка
А почему Selection.EntireRow.Delete не подходит?
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 22.02.2011, 10:40   #9
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Проще всего удалить строки макросом:
http://excelvba.ru/code/ConditionalRowsDeleting

Как сделать это вручную - не придумал. Если кто знает - подскажите.
(т.е. как найти через Ctrl + F и выделить все найденные ячейки, я знаю, но как потом удалить все строки, в которых выделена хотя бы одна ячейка, - вот до этого не додумался.)
ПКМ-удалить-строку. Да, а "как найти через Ctrl + F и выделить все найденные ячейки, я знаю" я тоже не знаю.
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728

Последний раз редактировалось kuklp; 22.02.2011 в 10:43.
kuklp вне форума Ответить с цитированием
Старый 22.02.2011, 10:43   #10
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

Цитата:
Сообщение от kuklp Посмотреть сообщение
ПКМ-удалить-строку.
Спасибо) не знал о такой возможности)
Пытался нажать Shift + Пробел для выделения строки - но фокус не удался, выделилась только последняя строка
EducatedFool вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
удаление сразу всех пустых строчек в таблице kibernet Microsoft Office Word 3 21.12.2010 12:07
Удаление лишних строчек Lau Microsoft Office Excel 28 29.09.2010 16:11
перенос по словам gsg Microsoft Office Excel 2 08.09.2010 09:07
По имеющимся данным построить диаграмму Raptor Помощь студентам 1 15.12.2007 19:53
Удаление пустрых строчек в Memo GAGARIN-NEW Общие вопросы Delphi 4 07.12.2007 17:09