Страницы: 1
RSS
Перенос значений из таблицы в таблицу
 
Здравствуйте! Помогите пожалуйста, нужно из таблицы снизу как-то рационально перенести значения в верхнюю (чтобы не копировать строчки и вставлять). Возможно ли это?
 
Здравствуйте.
Попробуйте макрос (он запускается кнопкой "Объединить"). Если таблицы (верхняя и нижняя) имеют постоянные количество и порядок строк, то можно сделать все проще - использовать формулу ВПР.
 
Пишет проблема с файлом... А если у меня меняются и количество столбцов и строк? Можете пожалуйста объяснить принцип макроса?
Цитата
написал:
Здравствуйте.Попробуйте макрос (он запускается кнопкой "Объединить"). Если таблицы (верхняя и нижняя) имеют постоянные количество и порядок строк, то можно сделать все проще - использовать формулу ВПР.
 
Цитата
написал:
Пишет проблема с файлом
Можете приложить сообщение об ошибке?

Макрос загружает в массив данные  из таблиц, потом проходит по этому массиву и смотрит с чего начинается строка. Если строка начинается с "Точка..." то запоминаю в словаре номер точки и номер строки в массиве, если не "Точка.." то ищу в словаре номер точки и если нашел - заменяю значения в строке верхней таблицы.  
 
Я завтра Вам тогда скину. А вот ещё скажите, пожалуйста, как сделать, чтобы по поиске выделялся только номер точки, ведь точка 1 и 1 это же не идентичные значения. Я это к тому, что если вдруг не получится ошибку файла исправить, я что-то подобное нашел, как и ваш  способ. Ваш макрос я так понимаю и при увеличении строк будет работать?
 
я понял что "Точка 1" в верхней таблице соответствует "1" в нижней (у них одинаковые значения в Вашем примере). Если это не правильно, то я перепишу макрос чтобы он искал по точному совпадению наименований точек.  

Цитата
написал:
макрос я так понимаю и при увеличении строк будет работать?
будет

Может так получиться что в нижней таблице будут наименования точек которых нет в верхней? Если да, то тогда их нужно добавить в верхнюю таблицу?
 
Нет, номера точек и строка сверху, должны быть индентичны просто номеру и строке. Там всегда будут те же точки, но сверху они в разброс. Спасибо Вам огромное, что так вникаете.
Изменено: 16102002 - 31.03.2026 00:12:04
 
Вот ошибка. А ещё такой вопросик: а если для точек количество данных увеличится? Ну то есть количество столбцов 4-35 станет с 4 до 40 тоже работать будет?
Цитата
написал:
Можете приложить сообщение об ошибке?
 
16102002, измените Ник, пожалуйста
ПРАВИЛА ФОРУМА, Обязательно к прочтению перед созданием новой темы

Цитата
3. Запрещено
...
  3.2. Использовать в сообщениях, подписях и логинах на форумах нецензурную лексику, текст с пЕреМеНнЫм регистром или бессмысленным набором символов, заменять буквы другими символами.
Согласие есть продукт при полном непротивлении сторон
 
Вы хотите использовать макрос для файлов с разным количеством колонок? Т,е, в одном будет 4-35, а в другом 4-40 и т.д.?
Насчет ошибки - у Вас что-то с настройками безопасности. Может быть запрещен запуск макросов или windows блокирует файл из интернета.
Попробуйте сначала сделать вот это: закройте файл, нажмите правой кнопкой мыши -> «Свойства» -> поставьте галочку «Разблокировать» (внизу) -> «Применить». Или попробуйте изменить имя файла на название из латинских букв.
Во вложении файл с изменениями для поиска и замены значений.
PS. Попробуйте кликнуть по сообщению об ошибке, может станет понятнее что не нравится excel.
Изменено: Aлeкceй - 31.03.2026 16:49:21
 
16102002, можно подтянуть значения формулой
например:
=ЕСЛИОШИБКА(ВПР(--ПСТР($B4;7;9);$B$59:$AF$85;C$3-1;);"")
...файл и прочие нюансы после устранения замечания модератора
 
Да-да, потому что позиций для каждой точки бывает и другое количество. Попробую сделать, как Вы написали.
Цитата
написал:
Вы хотите использовать макрос для файлов с разным количеством колонок? Т,е, в одном будет 4-35, а в другом 4-40 и т.д.?Насчет ошибки - у Вас что-то с настройками безопасности. Может быть запрещен запуск макросов или windows блокирует файл из интернета.Попробуйте сначала сделать вот это: закройте файл, нажмите правой кнопкой мыши -> «Свойства» -> поставьте галочку «Разблокировать» (внизу) -> «Применить». Или попробуйте изменить имя файла на название из латинских букв.Во вложении файл с изменениями для поиска и замены значений.PS. Попробуйте кликнуть по сообщению об ошибке, может станет понятнее что не нравится excel.
 
Добрый вечер! Выполнил
Цитата
написал:
после устранения  замечания  модератора
 
Сделал, как Вы написали-всё открылось, но изменив количество строк переносятся значения неверно. Столбцов здесь меньше даже получилось
Цитата
написал:
Т,е, в одном будет 4-35, а в другом 4-40 и т.д.?
 
хорошо, посмотрю и исправлю
PS. Что-то я не понял мы ищем точки по точному совпадению? т.е.  "Точка 001" в верхней таблице должна быть = "Точка 001" в нижней таблице или "Точка 001" = "001"?
Изменено: Aлeкceй - 31.03.2026 21:38:36
 
Цитата
написал:
"Точка 001" в верхней таблице должна быть = "Точка 001"
Немного не пойму( Снизу в таблицы написаны номера точек и далее по строке количество различных позиций на точке. Сверху в таблице точки объединены по районам (70010-...) и т.к. это итоговый вариант таблицы, то там точки уже не просто номерами, а со словом "точка" спереди. Значения позиций у "точка 36" в верхней таблице и "36" в нижней таблице по строке должны совпадать. А столбцы от AE, если позиций будет больше, то с другого столбца, должны не зависеть от нижней таблицы, они уже из другой заполняются. Ну и я сейчас проверил, вроде нормально макрос работает, это я проверку не так сделал.
Изменено: chebus2002 - 31.03.2026 22:14:25
 
Изменил макрос, он теперь определяет количество колонок в нижней таблице. Т.е. определяет какие колонки обновлять.
 
Цитата
Выполнил
)
chebus2002,  см файл
 
Цитата
написал:
Изменил макрос,
Что-то не работает, там на другом листе
Изменено: chebus2002 - 01.04.2026 18:29:47
 
Здравствуйте.
Вариант формулами в файле
Код
=ЕСЛИ(ЛЕВБ($B4;1)="И";СУММ(ИНДЕКС(C$3:C3;ПОИСКПОЗ(9^9;$A$3:$A3;1)):C3);СУММЕСЛИ($B$59:$B$85;ПСТР($B4;7;9);C$59:C$85))
 
попробуйте теперь
 
Цитата
написал:
попробуйте теперь
Спасибо Вам огромное!!! Пока всё работает)))
 
Цитата
написал:
Вариант формулами в файле
Здравствуйте! Спасибо большое, тоже попробую!
 
Цитата
написал:
попробуйте теперь
Здравствуйте! Снова какая-то ошибка, добавил столбец и в последнем считает непонятно что((( Может мне надо каждый раз что-то в макросе менять? Напишите что пожалуйста.
 
Цитата
chebus2002 написал:
Может мне надо каждый раз что-то в макросе менять? Напишите что пожалуйста.
а куда же "учитель" подевался?

Вроде так успешно поучал всех на другом форуме...
Пришелец-прораб.
 
Установите у добавленной колонки все границы и всё заработает. Я по границам ячеек в последней строке нижней таблицы определяю количество колонок в ней.  Есть еще вариант - добавить лист "Настройки" на котором перед запуском макроса будете указывать сколько колонок во второй таблице. Если второй вариант предпочтительнее то изменю код макроса.
 
Цитата
написал:
а куда же "учитель" подевался?
Да никуда... Все учатся, но тот, кто говорит менее опытному пользователю, что это невозможно, когда другой человек и не один, эту задачу решает, это как минимум странно. Закрадывается мысль, что тот, кто считает это невозможным не такой уж профан, а, следовательно, не зачем и писать, если не знаете. Надо было написать: не знаю, как это решать.
А человек мне помог, я Вам его решение и скинул, может научитесь :D  
 
Цитата
написал:
Если второй вариант предпочтительнее то изменю код макроса.
Я понял, спасибо Вам большое! Когда встречаю таких людей на форумах, понимаю, как много не знаю. Очень выручили!!!
 
Цитата
chebus2002 написал:
я Вам его решение и скинул, может научитесь
мне скинули? Это Ваша фантазия, о Учитель.
Цитата
chebus2002 написал:
понимаю, как много не знаю.
воистину так. Начните с ознакомления с правилами общения на подобного рода форумах. Вот с этим, в частности
Цитата
4. Не рекомендуется
  4.1. Создавать одинаковые темы или сообщения в разных форумах (cross-posting). Публикуя один и тот же вопрос в разных форумах и на дружественных сайтах вы заставляете сразу нескольких людей параллельно думать над вашей задачей и обесцениваете усилия тех, кто даст ответ вторым-третьим и т.д.
Пришелец-прораб.
 
Цитата
написал:
воистину так.
Ой, простите...
Страницы: 1
Читают тему
Наверх