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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.11.2009, 02:44   #1
dk01
 
Регистрация: 22.11.2009
Сообщений: 4
По умолчанию Выборка строк с определенной меткой из одной таблицы и автоматический перенос в новую таблицу.

Здравстуйте, нужна помощь специалистов! Сам справится с задачей не могу. Есть простая таблица учета текущих расходов и доходов фирмы. Столбцы: А-дата, B-назначение платежа, С-контрагент, D-Основание, E-Категория, F-Проект, G-счет, H-Приход, I-Расход, L-Итого. В столбце F указывается сокращенно на латинском название проекта (можно цифрами), к которому относится доход или расход. Задача, чтобы из строк с одинаковым названием проекта автоматически переносились значение ячеек с А по I, в новую таблиц, соответствующую этому проекту, на другом листе, . При появлении новой записи с названием пректа, строка должна добальтся в таблицу, соответствующую этому проекту. В итоге каждой попроектной таблицы, баланс - суммирующий текущие доходы и расходы по каждому проекту, и отражающий его доходность. И так по нескольким проектам, которые будут постепенно добавлятся. В приложенном файле пример основной таблицы, и необходимая таблица, но сделанная вручную. При быльшом объеме записей делать такую выборку очень неудобно, если кто-нибудь знает как можно решить такую задачу, буду очень благодарен. Дмитрий.
Вложения
Тип файла: zip DK_Пример.zip (21.1 Кб, 78 просмотров)
dk01 вне форума Ответить с цитированием
Старый 24.11.2009, 06:07   #2
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Посмотрите вложение. Для формирования данных запустите макрос "Main". После изменения (добавления, удаления, перемещения и т.п.) данных, снова выполните макрос.
ПРИМЕЧАНИЯ:
1. Макрос не добавляет (удаляет) записи, а формирует новую таблицу.
2. Макрос перенесет записи и выполнит все действия с активного (в момент запуска макроса) листа на лист "Проекты".
3. Структуру листа (количество и порядок столбцов) изменять нельзя.
Вложения
Тип файла: rar DK_Пример_2.rar (22.5 Кб, 208 просмотров)
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 25.11.2009, 02:24   #3
dk01
 
Регистрация: 22.11.2009
Сообщений: 4
По умолчанию SAS888 Спасибо!

SAS888!! Профессионалу огромное спасибо за оперативную помощь и мастерство!
Запустил макрос все работает, пробовал добавлять строки и метки проектов, после запуска макроса все обновляется. Единственный момент, который я сразу не учел в своем сообщение, что таблица с моим основным отчетом развивается на отдельные листы по месяцам (Октябрь, Ноябрь и т.д.). Я так понял, что макрос делает выборку только с активного листа, открытого в момент его запуска, т.к. я добавил лист "Ноябрь" с такой же структурой таблицы, но макрос формирует по-проектные таблицы только из какого-нибудь одного листа. Отсюда вопрос, это обязательное условие, чтобы все данные были на одном листе, или можно подкорректировать макрос, чтобы он делал выборку по всем листам из книги, в последовательности их расположения в книге (листов обычно 12, по количеству месяцев)?
И второй вопрос, можно ли, чтобы в создаваемую таблицу не переносились столбцы J, L, K, или переносится вся строчка целиком, и прийдется каждый раз удалять вручную? Ели получится подправить макрос, будет просто супер. Если не получится, то все равно спасибо за помощь, мне эта функция очень облегчит работу.
Вложения
Тип файла: zip DK_Пример_2.2.zip (35.1 Кб, 56 просмотров)
dk01 вне форума Ответить с цитированием
Старый 25.11.2009, 07:43   #4
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Посмотрите вложение. Не зависимо от того, какой лист в текущий момент активный, запустите макрос "Main". Будут обработаны все листы, структура которых должна быть одинакова.

P.S. Как Вы, наверное, заметили, макрос получился совершенно другой. Впредь, чтобы зря не тратить и наше и Ваше время, ставьте задачу сразу полностью.
Вложения
Тип файла: rar DK_Пример_3.rar (25.5 Кб, 209 просмотров)
Чем шире угол зрения, тем он тупее.

Последний раз редактировалось SAS888; 25.11.2009 в 08:29. Причина: Добавлено
SAS888 вне форума Ответить с цитированием
Старый 26.11.2009, 00:53   #5
dk01
 
Регистрация: 22.11.2009
Сообщений: 4
По умолчанию SAS888 Спасибо!

Отлично все работает, именно так, как нужно. Еще раз огромное спасибо. Посоветуйте пожалуйста какие лучше почитать книги для "чайников", по написанию макросов, а то понимаю, что многое можно автоматизировать в процессе учета и отчетности, а как это сделать знаний не хватает. Заранее благодарен.

P.s. Замечание Ваше принял во внимание, сразу не задумался, что для выборки с нескольких листов нужна совсем другая прогрмма.
dk01 вне форума Ответить с цитированием
Старый 26.11.2009, 04:40   #6
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Несомненно, лучшая "азбука" по VBA Excel это книги Дж. Уокенбаха. "Профессиональное программирование на VBA в Excel 2002 (2003)", "Подробное руководство по созданию формул в Excel" и т.д.
Цитата:
сразу не задумался, что для выборки с нескольких листов нужна совсем другая программа.
Не всегда. Но это как раз тот случай.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 26.11.2009, 21:26   #7
dk01
 
Регистрация: 22.11.2009
Сообщений: 4
По умолчанию

Спасибо за рекомендацию, обязательно почитаю.
dk01 вне форума Ответить с цитированием
Старый 06.08.2010, 18:20   #8
AndreySaf
Новичок
Джуниор
 
Регистрация: 26.07.2010
Сообщений: 1
Вопрос Изменение.

Сергей, а не можете ли вы подсказать, как изменить ваш скрипт, чтобы он(скрипт) выбирал из множества строк только те, которые содержат определенный текст? я вот тут бился пару дней - ничего не получилось... Читаю рекомендованную вами книгу, но ответа на свой вопрос еще не нашел. заранее спасибо...
AndreySaf вне форума Ответить с цитированием
Старый 23.08.2010, 05:52   #9
sated
 
Регистрация: 23.08.2010
Сообщений: 7
По умолчанию

ПРОСТО ОЧЕНЬ КРУТО ДЛЯ МЕНЯ!

очень хороший макрос, пытаюсь его теперь под себя сделать. Задача очень похожая.

СПАСИБО!
sated вне форума Ответить с цитированием
Старый 23.08.2010, 05:58   #10
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Цитата:
...как изменить ваш скрипт, чтобы он(скрипт) выбирал из множества строк только те, которые содержат определенный текст?
давайте пример файла с исходными данными и с тем, что Вы хотите получить в итоге. Как и где будет (должна) задаваться строка для поиска?
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Автоматический перенос ряда рисунков... regman HTML и CSS 2 13.11.2009 11:42
авт. перенос данных из нескольких столбцов одной таблицы в один столбец другой таблицы A_ALL Microsoft Office Access 7 24.08.2009 21:13
Автоматический перенос информации из Листов... belarusone Microsoft Office Excel 5 06.08.2009 12:39
перенос данных из таблицы 1 в таблицу 2 AndreyZeus Microsoft Office Excel 1 20.03.2009 16:02
Выборка строк из таблицы по значению TDBLookupComboBox Gringo БД в Delphi 4 28.10.2008 05:45