Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Удаление строк по условию (макрос) - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Удаление строк по условию (макрос)
force Дата: Воскресенье, 24.08.2014, 14:46 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Всем доброго времени суток!

Нужна Ваша помощь с написанием макроса. Нужно сделать обработку прайса ( в нем примерно 15 000 - 20 000 строк):

1. Удалить с 1 - 9 строки
2. Удалить столбцы C, D, F, G, H, I, K, L, M, N, P
3. Удалить строки по условию, например: начиная со строки "Компьютеры для игроков" по "Компьютеры Acer", далее с "Рекламная продукция для дилеров" по "Воздуходувки Makita" и тд. (таких условий примерно 6), в завершении удалить все, что ниже строки с наименованием "Уцененный товар".
4. Удалить символы < и >

Есть макрос, но он удаляет только по наименованию:


Исходник (файл с наименованием start) и пример (файл с наименованием finish) прилагаю.
Надеюсь и рассчитываю на Вашу помощь в решении такой сложной задачи.
К сообщению приложен файл: Start.xls (23.5 Kb) · Finish.xls (18.5 Kb)
 
Ответить
СообщениеВсем доброго времени суток!

Нужна Ваша помощь с написанием макроса. Нужно сделать обработку прайса ( в нем примерно 15 000 - 20 000 строк):

1. Удалить с 1 - 9 строки
2. Удалить столбцы C, D, F, G, H, I, K, L, M, N, P
3. Удалить строки по условию, например: начиная со строки "Компьютеры для игроков" по "Компьютеры Acer", далее с "Рекламная продукция для дилеров" по "Воздуходувки Makita" и тд. (таких условий примерно 6), в завершении удалить все, что ниже строки с наименованием "Уцененный товар".
4. Удалить символы < и >

Есть макрос, но он удаляет только по наименованию:


Исходник (файл с наименованием start) и пример (файл с наименованием finish) прилагаю.
Надеюсь и рассчитываю на Вашу помощь в решении такой сложной задачи.

Автор - force
Дата добавления - 24.08.2014 в 14:46
wild_pig Дата: Воскресенье, 24.08.2014, 23:20 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 518
Репутация: 97 ±
Замечаний: 0% ±

2003, 2013
Похоже на работу.
 
Ответить
СообщениеПохоже на работу.

Автор - wild_pig
Дата добавления - 24.08.2014 в 23:20
force Дата: Понедельник, 25.08.2014, 00:44 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Похоже на работу.

Мне очень важно сделать:

3. Удалить строки по условию, например: начиная со строки "Компьютеры для игроков" по "Компьютеры Acer", далее с "Рекламная продукция для дилеров" по "Воздуходувки Makita" и тд. (таких условий примерно 6), в завершении удалить все, что ниже строки с наименованием "Уцененный товар".

Все остальное просто прицеп (что б не мучиться все собирать в одну кучу).
Если у кого-то есть возможность помочь с п. 3, буду очень признателен. beer


Сообщение отредактировал force - Понедельник, 25.08.2014, 00:45
 
Ответить
Сообщение
Похоже на работу.

Мне очень важно сделать:

3. Удалить строки по условию, например: начиная со строки "Компьютеры для игроков" по "Компьютеры Acer", далее с "Рекламная продукция для дилеров" по "Воздуходувки Makita" и тд. (таких условий примерно 6), в завершении удалить все, что ниже строки с наименованием "Уцененный товар".

Все остальное просто прицеп (что б не мучиться все собирать в одну кучу).
Если у кого-то есть возможность помочь с п. 3, буду очень признателен. beer

Автор - force
Дата добавления - 25.08.2014 в 00:44
wild_pig Дата: Понедельник, 25.08.2014, 08:39 | Сообщение № 4
Группа: Проверенные
Ранг: Обитатель
Сообщений: 518
Репутация: 97 ±
Замечаний: 0% ±

2003, 2013
условий примерно 6)

Судя по примеру осталось 3 группы, может лучше перечислите что нужно оставить, а не что удалить.
 
Ответить
Сообщение
условий примерно 6)

Судя по примеру осталось 3 группы, может лучше перечислите что нужно оставить, а не что удалить.

Автор - wild_pig
Дата добавления - 25.08.2014 в 08:39
Rioran Дата: Понедельник, 25.08.2014, 12:07 | Сообщение № 5
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
force, здравствуйте.

Во вложении макрос почти развлекательного характера =) Так как из Вашей инструкции не очень понятно, какие категории надо удалить, а какие оставить - код работает следующим образом. После первого нажатия на кнопку создаётся список категорий и предлагается выбрать, кого оставляем. Для этого заменяем нули на единицы напротив наименований. После этого жмём кнопу ещё раз.
К сообщению приложен файл: Table_Extract.xlsm (22.5 Kb)


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
 
Ответить
Сообщениеforce, здравствуйте.

Во вложении макрос почти развлекательного характера =) Так как из Вашей инструкции не очень понятно, какие категории надо удалить, а какие оставить - код работает следующим образом. После первого нажатия на кнопку создаётся список категорий и предлагается выбрать, кого оставляем. Для этого заменяем нули на единицы напротив наименований. После этого жмём кнопу ещё раз.

Автор - Rioran
Дата добавления - 25.08.2014 в 12:07
force Дата: Понедельник, 25.08.2014, 23:01 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Так как из Вашей инструкции не очень понятно, какие категории надо удалить, а какие оставить

Все понятно, на самом деле наименований категорий примерно 2 000, мне нужно жестко прописать в алгоритме макроса, с какой и по какую категорию удалять строки (вы покажите пример, а я пропишу :) ), и таких "жестких" условий примерно 10 - 15 (не помню).

Я просто привел пример на нескольких категориях, потому что оригиналы в архиве весят от 14 мб.

Макрос сначала находит первое условие - "Компьютеры для игроков" и все удаляет до "Компьютеры Acer", затем ищет втрое условие - "Рекламная продукция для дилеров" и все удаляет до "Воздуходувки Makita" и тд. пока не встретим условие - "Уцененный товар", после которого все остальные строки удаляем.

Надеюсь, теперь правильно изложил.


Сообщение отредактировал force - Вторник, 26.08.2014, 00:05
 
Ответить
Сообщение
Так как из Вашей инструкции не очень понятно, какие категории надо удалить, а какие оставить

Все понятно, на самом деле наименований категорий примерно 2 000, мне нужно жестко прописать в алгоритме макроса, с какой и по какую категорию удалять строки (вы покажите пример, а я пропишу :) ), и таких "жестких" условий примерно 10 - 15 (не помню).

Я просто привел пример на нескольких категориях, потому что оригиналы в архиве весят от 14 мб.

Макрос сначала находит первое условие - "Компьютеры для игроков" и все удаляет до "Компьютеры Acer", затем ищет втрое условие - "Рекламная продукция для дилеров" и все удаляет до "Воздуходувки Makita" и тд. пока не встретим условие - "Уцененный товар", после которого все остальные строки удаляем.

Надеюсь, теперь правильно изложил.

Автор - force
Дата добавления - 25.08.2014 в 23:01
force Дата: Понедельник, 25.08.2014, 23:12 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
лучше перечислите что нужно оставить, а не что удалить.

Это просто, как я изложил выше, пример. К сожалению, в оригинале нужно оставить ОЧЕНЬ много категорий.
 
Ответить
Сообщение
лучше перечислите что нужно оставить, а не что удалить.

Это просто, как я изложил выше, пример. К сожалению, в оригинале нужно оставить ОЧЕНЬ много категорий.

Автор - force
Дата добавления - 25.08.2014 в 23:12
force Дата: Понедельник, 25.08.2014, 23:21 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Rioran, Ваш вариант мне очень понравился, я только изменил
Код
Range(Cells(A + 3, 3), Cells(Y - 1, 3)).Value = 0
на
Код
Range(Cells(A + 3, 3), Cells(Y - 1, 3)).Value = 1
в моем случае проще выбрать что удалить, а не оставить.

Вам большое СПАСИБО pray , не оставили меня в беде, все отлично работает.


Сообщение отредактировал force - Понедельник, 25.08.2014, 23:21
 
Ответить
СообщениеRioran, Ваш вариант мне очень понравился, я только изменил
Код
Range(Cells(A + 3, 3), Cells(Y - 1, 3)).Value = 0
на
Код
Range(Cells(A + 3, 3), Cells(Y - 1, 3)).Value = 1
в моем случае проще выбрать что удалить, а не оставить.

Вам большое СПАСИБО pray , не оставили меня в беде, все отлично работает.

Автор - force
Дата добавления - 25.08.2014 в 23:21
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2025 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!