Новости:

Из правил форума: Тема должна отражать суть вопроса, топики типа "help please" будут удаляться!

Главное меню

Синхронизация данных с другим файлом

Автор tim3, 25.04.2016, 11:38

« назад - далее »

tim3

Всем Здрасьте!

Прошу помощи!
Есть 2 файла в exel, они похожие, но структура не идентична. Нужно в первом файле корректировать те названия, которые есть во втором файле. И эта корректировка, которая делается в первом файле, должна отобразиться во втором файле. Например, меняем Райфан 1 в первом файле на Фанта и во втором файле эта Фанта должна отобразиться вместо Райфан 1. Нужно сделать так, чтобы не каждую ячейку вручную переносить ссылкой, а оптом все перенести, т.к. таблица огромная, а здесь маленькая часть для ясности. Еще я подумал, может макросами можно все это сделать?

Благодарю!

kuklp

Я, как всегда, чертовски адекватен... Email: pilipnikop@yandex.ua WM Z206653985942, R334086032478, U238399322728, E332314026771

tim3

Ну и к чему Вы это написали? Лучше бы помогли мне с моим вопросом

vikttur

К чему? Подумайте:
Цитироватьcross-posting. Публикуя один и тот же вопрос в разных форумах и на дружественных сайтах вы заставляете сразу нескольких людей параллельно думать над вашей задачей и обесцениваете усилия тех, кто даст ответ вторым-третьим и т.д.
Если уж создаете параллельные темы, информируйте об этом сами.

tim3

Ясно, буду знать. Есть у кого идеи как реализовать синхронизацию?

vikttur

Цитироватьтаблица огромная, а здесь маленькая часть для ясности
где "здесь"?

Цитироватьчтобы не каждую ячейку вручную переносить ссылкой...
... можно записать ссылку без закрепления (без знаков $) и протянуть.

IKor

Мне кажется, что проблема заключается в "неполной идентичности структур" двух документов...
Поэтому простая привязка с абсолютными и относительными ссылками может не помочь.

Если операция замены не носит регулярный характер, то я бы посоветовал Вам использовать инструмент "Заменить" (Ctrl+F) последовательно _в обоих документах_

Потому что, если я правильно Вас понимаю, то Вы хотите следующего:
* при каждом (sic!) изменении данных на листе проверять изменились ли значения в "ключевых ячейках"
* вспоминать прежнее значение уже измененной "ключевой ячейки" - что само по себе является нетривиальной задачей (которую я бы решал при помощи вспомогательных ячеек, но мастера VBA могут предложить и более элегантное решение)
* проверять наличие во втором документе "ключевых ячеек" с прежним значением
* автоматически (без видимого открытия второго документа) менять значения на новые

Поправьте меня, если я ошибаюсь.

P.S. "Маленькую часть _для ясности_" обнаружить не удалось...

tim3


tim3

#8
IKor, инструмент "заменить" не подойдет. Здесь нужно что-то другое. Даже ВПР не автоматизирует это дело. Уже пытался сделать.

И насчет ссылок Вы правы - тоже не получится, т.к. каждую ссылку нужно  делать вручную, структуры документов разные и документы огромные (я как-то просидел неделю, делал ссылки вручную :-[)

runner

#9
Цитата: tim3 от 26.04.2016, 12:01
Ой, простите, добавил файлы ::) :)
Файлы ни о чём, извините.
Должна быть таблица соответствий, что ли...


tim3

runner, если файлы ни о чем, подскажите тогда как сделать синхронизацию

runner

Цитата: tim3 от 27.04.2016, 06:43
runner, если файлы ни о чем, подскажите тогда как сделать синхронизацию
Синхронизацию чего с чем?
По каким признакам сопоставлять?
Нужна таблица в которой видно, что Райфан 1 = Фанта, и далее, по списку.
А вообще, судя по Вашим объяснениям, тут пахнет циклическими ссылками :)

IKor

2 tim3

Сформулируйте задачу четче: например, внесите уточнения в алгоритм, который я описал выше.

Пока мне совершенно непонятно почему не подходит алгоритм "заменить" последовательно в обоих файлах...
В прилагаемых примерах "Райфан 1" встречается однократно и именно в полностью идентичном виде - меняйте его на "Фанту" спокойно...

Если же Вы продолжаете упорствовать в своем нежелании пользоваться стандартными инструментами Excel'я, то могу предложить Вам проиндексировать "ключевые ячейки" неизменными атрибутами (однократно + по мере появления новых ключевых ячеек) - в данном случае указать в соседних ячейках (можно скрытых от пользователей) неизменных индексов, которые в дальнейшем использовать в функции ВПР(_) (или ее аналоге, работающем с закрытыми документами), записанных в ячейках второго документа.

tim3

#13