Всем добрый вечер и опять с просьбой! Подкинули мне тут одну очень полезную идею, как можно упростить и ускорить возню с таблицами на работе. Ручная процедура такая: выделяем ячейку или ячеки в нужных столбиках и тянем вниз до самого крайнего значения, но без захватывания формул с итоговым суммированием. Затем все это копируем и вставляем значения (тестовые и цифровые) в соотвествующие колонки в другой таблице с расчетами. А поскольку исходные таблицы бывают на 200 и более строк, то тащить выделение до конца, дело весьма времезатратное получается. Прикинул условия для макроса: копирование от выделенной ячейки (или ячеек) вниз до самого крайнего значения, включая конечные формулы. Значения, полученные формулами включаем, потому, что иногда внутри выделенного диапазона формулы тоже подаются. Я лучше потом их вручную потру, поскольку никак не могу придумать по какому принципу исключать формулы сумм в конце и учитывать значения из формул в середине. Самостоятельно написание через рекордер дает результат лишь по фиксированному в тексте макроса диапазону, а как прописать чтоб от выделенной ячейки (ячеек) и вниз выделялось я не знаю. В общем еще раз нужна ваша помощь. Образец таблицы прилагаю
Всем добрый вечер и опять с просьбой! Подкинули мне тут одну очень полезную идею, как можно упростить и ускорить возню с таблицами на работе. Ручная процедура такая: выделяем ячейку или ячеки в нужных столбиках и тянем вниз до самого крайнего значения, но без захватывания формул с итоговым суммированием. Затем все это копируем и вставляем значения (тестовые и цифровые) в соотвествующие колонки в другой таблице с расчетами. А поскольку исходные таблицы бывают на 200 и более строк, то тащить выделение до конца, дело весьма времезатратное получается. Прикинул условия для макроса: копирование от выделенной ячейки (или ячеек) вниз до самого крайнего значения, включая конечные формулы. Значения, полученные формулами включаем, потому, что иногда внутри выделенного диапазона формулы тоже подаются. Я лучше потом их вручную потру, поскольку никак не могу придумать по какому принципу исключать формулы сумм в конце и учитывать значения из формул в середине. Самостоятельно написание через рекордер дает результат лишь по фиксированному в тексте макроса диапазону, а как прописать чтоб от выделенной ячейки (ячеек) и вниз выделялось я не знаю. В общем еще раз нужна ваша помощь. Образец таблицы прилагаюSerge1400
Ну а если мне, скажем, надо выделилить значения только по столбикам B C и G H?
Вот тут мы пришли к выводу, что надо бы излагать свои мысли более доходчиво. Как будет происходить это самое "надо"? Столбцы будут статично прописаны в коде, может на листе, может это будет выделение ячеек? Для чего захватывать итоговые формулы? Что вы вообще пытаетесь сделать? Может надо более подробно рассказать для чего это надо и найдутся способы лучше этого копирования "формула/не формула".
Ну а если мне, скажем, надо выделилить значения только по столбикам B C и G H?
Вот тут мы пришли к выводу, что надо бы излагать свои мысли более доходчиво. Как будет происходить это самое "надо"? Столбцы будут статично прописаны в коде, может на листе, может это будет выделение ячеек? Для чего захватывать итоговые формулы? Что вы вообще пытаетесь сделать? Может надо более подробно рассказать для чего это надо и найдутся способы лучше этого копирования "формула/не формула".wild_pig
Коль скоро не получилось у меня словами донести мысль, то попробую на примере с вложенным файлом. Голубым обзначил ячейки от которых предполагается начало выделения вниз таблицы. Начальные ячейки как правило в одной строке находятся, но бывает необходимость и в варианте как в примере. Желтым залиты ячейки которые должны затем выделятся (голубые тоже входят в выделямый диапазон) и копипаститься. Переносится в другую таблицу будут только голые значения из ячеек, без формул и форматов.
Коль скоро не получилось у меня словами донести мысль, то попробую на примере с вложенным файлом. Голубым обзначил ячейки от которых предполагается начало выделения вниз таблицы. Начальные ячейки как правило в одной строке находятся, но бывает необходимость и в варианте как в примере. Желтым залиты ячейки которые должны затем выделятся (голубые тоже входят в выделямый диапазон) и копипаститься. Переносится в другую таблицу будут только голые значения из ячеек, без формул и форматов.Serge1400
Муть какая-то. А как эти данные должны вставляться в итоговую таблицу? Со сдвигом ячеек, вместо старых данных, просто на отдельный лист? Вы придумали не "как можно упростить и ускорить возню с таблицами на работе", а головную боль. Скопировать несвязанные диапазоны не получится обычным способом. Как по мне так кода будет больше, чем вашей работы
Муть какая-то. А как эти данные должны вставляться в итоговую таблицу? Со сдвигом ячеек, вместо старых данных, просто на отдельный лист? Вы придумали не "как можно упростить и ускорить возню с таблицами на работе", а головную боль. Скопировать несвязанные диапазоны не получится обычным способом. Как по мне так кода будет больше, чем вашей работыwild_pig
Муть какая-то. А как эти данные должны вставляться в итоговую таблицу?
А если макросом отдельно выделять по каждой колонке? Сейчас именно так и происходит, но только вручную. Про ctrl + shift + "вниз" - знаю. Таблица которая в примере, это по сути своей заказ, который нужно считать в другой таблице - расчетной. Соотвествено данные из исходной таблицы копируются в пустые ячейки.
Муть какая-то. А как эти данные должны вставляться в итоговую таблицу?
А если макросом отдельно выделять по каждой колонке? Сейчас именно так и происходит, но только вручную. Про ctrl + shift + "вниз" - знаю. Таблица которая в примере, это по сути своей заказ, который нужно считать в другой таблице - расчетной. Соотвествено данные из исходной таблицы копируются в пустые ячейки.Serge1400
Сообщение отредактировал Serge1400 - Понедельник, 25.07.2016, 00:05
А если макросом отдельно выделять по каждой колонке?
вот код для копирования столбца (одного) от выделенной ячейки до крайнего значения [vba]
Код
Sub ColCopy() Range(ActiveCell, Cells(Rows.Count, ActiveCell.Column).End(xlUp)).Copy End Sub
[/vba] По сути заменяет Ctrl+Shift+End и Ctrl+C Не понятен принцип выделения первых значений, пользователь будет знать, что ему нужно выделить или необходим диалог? Также куда значения вставлять из файла-примера непонятно)
А если макросом отдельно выделять по каждой колонке?
вот код для копирования столбца (одного) от выделенной ячейки до крайнего значения [vba]
Код
Sub ColCopy() Range(ActiveCell, Cells(Rows.Count, ActiveCell.Column).End(xlUp)).Copy End Sub
[/vba] По сути заменяет Ctrl+Shift+End и Ctrl+C Не понятен принцип выделения первых значений, пользователь будет знать, что ему нужно выделить или необходим диалог? Также куда значения вставлять из файла-примера непонятно)sboy
Яндекс: 410016850021169
Сообщение отредактировал sboy - Понедельник, 25.07.2016, 09:12