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

Вход

Регистрация

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

 

= Мир MS Excel/Макрос добавления и удаление строк по условию - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Макрос добавления и удаление строк по условию (Макросы/Sub)
Макрос добавления и удаление строк по условию
force Дата: Пятница, 21.11.2014, 23:54 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 1 ±
Замечаний: 0% ±

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

Нужна Ваша помощь с написанием макроса. Имеется файл, для составления договора продажи и печати ТН, на вкладе №2 заполняется номенклатура и цена товара, на вкладке №3 формируется договор (в пункте 1 формируется таблица с заказанным товаром, добавляются строки, протягивается автосумма), на вкладке №4 формируется таблица для печати ТН (формируется таблица с заказанным товаром, добавляются строки, протягивается автосумма). Все работает хорошо, но есть один большой недостаток: при каждом заказе, на вкладках №3 и №4 нужно вручную добавлять строки (копировать формат высшей строки) и делать автосумму в итоговых колонках, иногда что-то можно забыть сделать, и документы получаются с ошибками. Прошу Вас помочь с решением данной проблемы: на вкладках №3 и №4 сделать автоматическое добавление или удаление строк по условию, которое записано на вкладке №2, т.е. если на вкладке №2 в п. 2 и тд. есть или нет наименование товара, а также подсчет автосуммы в итоговых колонках на вкладках №3 и №4.

Исходник (файл с наименованием start) и пример (файл с наименованием finish) прилагаю.

Рассчитываю на Вашу помощь, заранее спасибо!
К сообщению приложен файл: Start.xlsx (79.8 Kb) · Finish.xlsx (81.1 Kb)


Сообщение отредактировал force - Пятница, 21.11.2014, 23:58
 
Ответить
СообщениеВсем доброго времени суток!

Нужна Ваша помощь с написанием макроса. Имеется файл, для составления договора продажи и печати ТН, на вкладе №2 заполняется номенклатура и цена товара, на вкладке №3 формируется договор (в пункте 1 формируется таблица с заказанным товаром, добавляются строки, протягивается автосумма), на вкладке №4 формируется таблица для печати ТН (формируется таблица с заказанным товаром, добавляются строки, протягивается автосумма). Все работает хорошо, но есть один большой недостаток: при каждом заказе, на вкладках №3 и №4 нужно вручную добавлять строки (копировать формат высшей строки) и делать автосумму в итоговых колонках, иногда что-то можно забыть сделать, и документы получаются с ошибками. Прошу Вас помочь с решением данной проблемы: на вкладках №3 и №4 сделать автоматическое добавление или удаление строк по условию, которое записано на вкладке №2, т.е. если на вкладке №2 в п. 2 и тд. есть или нет наименование товара, а также подсчет автосуммы в итоговых колонках на вкладках №3 и №4.

Исходник (файл с наименованием start) и пример (файл с наименованием finish) прилагаю.

Рассчитываю на Вашу помощь, заранее спасибо!

Автор - force
Дата добавления - 21.11.2014 в 23:54
gling Дата: Суббота, 22.11.2014, 00:45 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2524
Репутация: 678 ±
Замечаний: 0% ±

2010
Здравствуйте. Добавлять как не знаю, но делаю так: Создаю сколько максимально мне нужно строк с нужным форматом, внизу итог, при печати скрываю пустые. Это как вариант. А у вас объединять после добавления придется, и после заполнения строки внизу будет создаваться пустая строка которую при печати все равно скрывать.


ЯД-41001506838083
 
Ответить
СообщениеЗдравствуйте. Добавлять как не знаю, но делаю так: Создаю сколько максимально мне нужно строк с нужным форматом, внизу итог, при печати скрываю пустые. Это как вариант. А у вас объединять после добавления придется, и после заполнения строки внизу будет создаваться пустая строка которую при печати все равно скрывать.

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

Excel 2010
Спасибо за быстрый ответ.

Создаю сколько максимально мне нужно строк с нужным форматом

Дело в том, что я заранее не знаю сколько будет строк (в основном до 10).

А у вас объединять после добавления придется

Если вставлять копию верхней строки, например, тогда объединять ничего нужно, так как формат и формулы копируются автоматом.


Сообщение отредактировал force - Суббота, 22.11.2014, 01:02
 
Ответить
СообщениеСпасибо за быстрый ответ.

Создаю сколько максимально мне нужно строк с нужным форматом

Дело в том, что я заранее не знаю сколько будет строк (в основном до 10).

А у вас объединять после добавления придется

Если вставлять копию верхней строки, например, тогда объединять ничего нужно, так как формат и формулы копируются автоматом.

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

Excel 2010
Неужели никто не сможет помочь решить мою задачу?
 
Ответить
СообщениеНеужели никто не сможет помочь решить мою задачу?

Автор - force
Дата добавления - 22.11.2014 в 23:22
RAN Дата: Суббота, 22.11.2014, 23:32 | Сообщение № 5
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Копирование предыдущей стороки пишется макрорекордером на раз.
Гемор с объединенными ячейками и форматированием под не вполне адекватный формат листа интереса не представляет.


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеКопирование предыдущей стороки пишется макрорекордером на раз.
Гемор с объединенными ячейками и форматированием под не вполне адекватный формат листа интереса не представляет.

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

Excel 2010
форматированием под не вполне адекватный формат листа

Что Вы имеете ввиду? Как правильно, по Вашему мнению, нужно все переделать (буду признателен за хороший совет, подсказку)?

Копирование предыдущей стороки пишется макрорекордером на раз.

Это понятно, но копировать и вставлять строки нужно только при условии, что на вкладке №2 не пустая строка с наименованием.

Я уверен, что при желании Вы (форумчане) смогли бы мне помочь, или дать хотя бы пару полезных советов (например с чего мне правильно будет начать, и какие темы почитать, что бы все собрать в одну кучу).
Буду благодарен за любую подсказку, совет.
 
Ответить
Сообщение
форматированием под не вполне адекватный формат листа

Что Вы имеете ввиду? Как правильно, по Вашему мнению, нужно все переделать (буду признателен за хороший совет, подсказку)?

Копирование предыдущей стороки пишется макрорекордером на раз.

Это понятно, но копировать и вставлять строки нужно только при условии, что на вкладке №2 не пустая строка с наименованием.

Я уверен, что при желании Вы (форумчане) смогли бы мне помочь, или дать хотя бы пару полезных советов (например с чего мне правильно будет начать, и какие темы почитать, что бы все собрать в одну кучу).
Буду благодарен за любую подсказку, совет.

Автор - force
Дата добавления - 22.11.2014 в 23:44
RAN Дата: Суббота, 22.11.2014, 23:49 | Сообщение № 7
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Например, нижние подписи раззместить не внизу листа, а через 5 строк под данными.
Использование объединенных ячеек усложняет примитивный макрос десятикратно.
но копировать и вставлять строки нужно только при условии, что на вкладке №2 не пустая строка с наименованием.

А вот это как раз наименьшая проблема. :D


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеНапример, нижние подписи раззместить не внизу листа, а через 5 строк под данными.
Использование объединенных ячеек усложняет примитивный макрос десятикратно.
но копировать и вставлять строки нужно только при условии, что на вкладке №2 не пустая строка с наименованием.

А вот это как раз наименьшая проблема. :D

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

Excel 2010
Например, нижние подписи раззместить не внизу листа, а через 5 строк под данными.

Дело в том, что нижние подписи в низу листа, потому что после таблицы текст и условия договора, я их вырезал для уменьшения размера файла.



А вот это как раз наименьшая проблема.

Можете набросать код (на примере, который Вам удобен), если не лень?
 
Ответить
Сообщение
Например, нижние подписи раззместить не внизу листа, а через 5 строк под данными.

Дело в том, что нижние подписи в низу листа, потому что после таблицы текст и условия договора, я их вырезал для уменьшения размера файла.



А вот это как раз наименьшая проблема.

Можете набросать код (на примере, который Вам удобен), если не лень?

Автор - force
Дата добавления - 22.11.2014 в 23:59
RAN Дата: Воскресенье, 23.11.2014, 00:16 | Сообщение № 9
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
http://www.excel-vba.ru/forum/index.php?topic=3251.0
Найдите все темы этого ТС на том форуме, на Планете, и здесь.
Там 100 пудов ваш вопрос обсосан с разных концов и с кучей решений.
Он создал примерно по пятку практически однотипных тем на каждом форуме.

Можете набросать код (на примере, который Вам удобен), если не лень?

лень. Запишите рекордером, проанализируйте, после задайте вопросы.
Если запишу я, то чем это будет лучше? Думаете, получится другая запись?


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Воскресенье, 23.11.2014, 00:24
 
Ответить
Сообщениеhttp://www.excel-vba.ru/forum/index.php?topic=3251.0
Найдите все темы этого ТС на том форуме, на Планете, и здесь.
Там 100 пудов ваш вопрос обсосан с разных концов и с кучей решений.
Он создал примерно по пятку практически однотипных тем на каждом форуме.

Можете набросать код (на примере, который Вам удобен), если не лень?

лень. Запишите рекордером, проанализируйте, после задайте вопросы.
Если запишу я, то чем это будет лучше? Думаете, получится другая запись?

Автор - RAN
Дата добавления - 23.11.2014 в 00:16
force Дата: Воскресенье, 23.11.2014, 00:23 | Сообщение № 10
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Он создал примерно по пятку практически однотипных тем на каждом форуме.

Прошу прощения, ОН - это кто? Если Вы про меня, то это моя единственная тема (по данному вопросу) и единственный форум который я посещаю, для поиска решений сложных задач (для меня) в MS Office
 
Ответить
Сообщение
Он создал примерно по пятку практически однотипных тем на каждом форуме.

Прошу прощения, ОН - это кто? Если Вы про меня, то это моя единственная тема (по данному вопросу) и единственный форум который я посещаю, для поиска решений сложных задач (для меня) в MS Office

Автор - force
Дата добавления - 23.11.2014 в 00:23
RAN Дата: Воскресенье, 23.11.2014, 00:25 | Сообщение № 11
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Он - это Топик Стартер, который создал тему(ы).
Мне все его темы на всехфорумах искать очень влом. :D
Я вам дал ссылку на Первый Попавшийся.
Но точно помню, во всех темах на всех форумах один вопрос обсасывался с разных? сторон.


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Воскресенье, 23.11.2014, 00:29
 
Ответить
СообщениеОн - это Топик Стартер, который создал тему(ы).
Мне все его темы на всехфорумах искать очень влом. :D
Я вам дал ссылку на Первый Попавшийся.
Но точно помню, во всех темах на всех форумах один вопрос обсасывался с разных? сторон.

Автор - RAN
Дата добавления - 23.11.2014 в 00:25
force Дата: Воскресенье, 23.11.2014, 00:31 | Сообщение № 12
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
RAN, спасибо за ответы. Буду что нибудь мучить.

Возможно, Вы имели ввиду эту тему?


Сообщение отредактировал force - Воскресенье, 23.11.2014, 00:35
 
Ответить
СообщениеRAN, спасибо за ответы. Буду что нибудь мучить.

Возможно, Вы имели ввиду эту тему?

Автор - force
Дата добавления - 23.11.2014 в 00:31
RAN Дата: Воскресенье, 23.11.2014, 00:35 | Сообщение № 13
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
На этом форуме у него ник такой же, на Планете - точно не помню.
Но таким же (цензура) он напрягал!

Возможно, Вы имели ввиду эту тему?

ГЫ!
Одна из...


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Воскресенье, 23.11.2014, 00:37
 
Ответить
СообщениеНа этом форуме у него ник такой же, на Планете - точно не помню.
Но таким же (цензура) он напрягал!

Возможно, Вы имели ввиду эту тему?

ГЫ!
Одна из...

Автор - RAN
Дата добавления - 23.11.2014 в 00:35
Wasilich Дата: Воскресенье, 23.11.2014, 08:42 | Сообщение № 14
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация: 326 ±
Замечаний: 0% ±

2003
не знаю сколько будет строк (в основном до 10).
Вам же посоветовали, сделайте бланк документа с 10-ю строками. После заполнения, например, пятью наименованиями, нажимаете кнопку "печать", макрос скрывает пять оставшихся пустых строк, печатает документ и снова отображает пустые строки. Все. Начинай сначала.
по Вашему мнению, нужно все переделать (буду признателен за хороший совет, подсказку)
Даю, Если Вам предстоит проводить какие то операции с таблицей (да и вообще), старайтесь не объединять ячейки, ибо это гемор. Вот у Вас в третьем листе 68 колонок а в четвертом 70. Зачем? Макрос с такими таблицами не всегда работает, да и сам путаешься. Достаточно было 10, 11.


Сообщение отредактировал Wasilic - Воскресенье, 23.11.2014, 09:11
 
Ответить
Сообщение
не знаю сколько будет строк (в основном до 10).
Вам же посоветовали, сделайте бланк документа с 10-ю строками. После заполнения, например, пятью наименованиями, нажимаете кнопку "печать", макрос скрывает пять оставшихся пустых строк, печатает документ и снова отображает пустые строки. Все. Начинай сначала.
по Вашему мнению, нужно все переделать (буду признателен за хороший совет, подсказку)
Даю, Если Вам предстоит проводить какие то операции с таблицей (да и вообще), старайтесь не объединять ячейки, ибо это гемор. Вот у Вас в третьем листе 68 колонок а в четвертом 70. Зачем? Макрос с такими таблицами не всегда работает, да и сам путаешься. Достаточно было 10, 11.

Автор - Wasilich
Дата добавления - 23.11.2014 в 08:42
force Дата: Воскресенье, 23.11.2014, 10:57 | Сообщение № 15
Группа: Пользователи
Ранг: Новичок
Сообщений: 42
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
макрос скрывает пять оставшихся пустых строк, печатает документ и снова отображает пустые строки


Действительно неплохой вариант, я сразу не уловил мысль, которую предложил gling.

Достаточно было 10, 11.


Буду переделывать.

А скрыть строки процедурой (см. ниже), только выбрать определенный диапазон для работы с ними, может поможете подправить код (мне нужно скрывать одновременно на листах 3 и 4, я предполагаю ActiveSheet заменить на Sheet ("3") ), и как снова, после печати, открыть строки?



Сообщение отредактировал force - Воскресенье, 23.11.2014, 11:22
 
Ответить
Сообщение
макрос скрывает пять оставшихся пустых строк, печатает документ и снова отображает пустые строки


Действительно неплохой вариант, я сразу не уловил мысль, которую предложил gling.

Достаточно было 10, 11.


Буду переделывать.

А скрыть строки процедурой (см. ниже), только выбрать определенный диапазон для работы с ними, может поможете подправить код (мне нужно скрывать одновременно на листах 3 и 4, я предполагаю ActiveSheet заменить на Sheet ("3") ), и как снова, после печати, открыть строки?


Автор - force
Дата добавления - 23.11.2014 в 10:57
Wasilich Дата: Воскресенье, 23.11.2014, 12:25 | Сообщение № 16
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация: 326 ±
Замечаний: 0% ±

2003
Если на "3"-м листе у Вас 10 строк с 14-й по 23-ю, а на "4"-м с 28-й по 37-ю то

Как то так но, не проверял.
 
Ответить
СообщениеЕсли на "3"-м листе у Вас 10 строк с 14-й по 23-ю, а на "4"-м с 28-й по 37-ю то

Как то так но, не проверял.

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

Excel 2010
Всем спасибо за помощь, задача решена. victory

Решение, которое предложил Wasilic, оказалось оптимальным на мой взгляд, я дописал сохранение файла в PDF (что б счета можно было отправлять по e-mail).



Сообщение отредактировал force - Понедельник, 24.11.2014, 01:52
 
Ответить
СообщениеВсем спасибо за помощь, задача решена. victory

Решение, которое предложил Wasilic, оказалось оптимальным на мой взгляд, я дописал сохранение файла в PDF (что б счета можно было отправлять по e-mail).


Автор - force
Дата добавления - 24.11.2014 в 01:48
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Макрос добавления и удаление строк по условию (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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