Страницы: 1
RSS
Копирование из одного листа в другой с сохранением ширины ячеек и ссылкой на исходный лист
 
Всем привет! Я новичок, так что сильно не пинайте. Не могу никак найти как сделать следующее:
Есть большая исходная таблица: 4050 строк и столбцы до SX
В таблице разные размеры как столбцов, так и строк.
Часть ячеек пустые. Формат ячеек- общий.
Вся эта таблица в листе 1.
Что хочу сделать:
Допустим я хочу скопировать из листа 1 первые 40 строк в лист 2 так, чтобы в листе 2 остались прежними как высота так и ширина ячеек (тут проблем как бы нет).
Но при этом, я хочу чтоб данные в листе 2 были привязаны к листу 1. Т.е. я бы вносил изменения в листе 1, а они автоматически менялись в листе 2.
Соответственно строки с 41 по 80 с листа 1 надо скопировать в лист 3. Опять же с сохранением размеров ячеек и ссылкой на лист 1.
Если я копирую с привязкой, вместо пустых строк получаются "0", и теряются размеры ячеек. При копировании с сохранением ширины, теряются ссылки.
Как быть ребята, подскажи? В ручную ссылки делать очень долго.
 
 
Сначала специальной вставкой всавьте ширины столбцов, затем все остальное
Согласие есть продукт при полном непротивлении сторон
 
Вот про все остальное можно поподробней?
 
Можно. В Вашем файле-ПРИМЕРЕ. Как есть - Как надо
Согласие есть продукт при полном непротивлении сторон
 
А все остальное лучше сделать ссылками:
В левую верхнюю вводите руками. Дальше копируете и вставляете  на весь диапазон специальной вставкой только формулы.
Изменено: PerfectVam - 17.03.2017 16:01:21
Следствие из третьего закона Чизхолма:
"Даже если ясность изложения исключает неверное толкование, все равно найдется кто-то, кто поймет Вас неправильно."
 
Файл https://yadi.sk/i/x_WC6Wre3G6Rev
Кнопка "скрыть" скрывает пустые столбцы, которые не нужны для печати. Кнопка "Отобразить" показывает пустые столбцы. . В лист 2 и лист 3 скопировал что хочу видеть, но без привязки. Далее копирование пойдет по "издателям".
Как сделать привязку сохранив исходное редактирование?
 
Цитата
PerfectVam написал:
Дальше копируете и вставляете  на весь диапазон специальной вставкой только формулы.
Это очень долго. Посмотрите пример, это только малая часть файла. Тем более он тогда ставит вместо пустых ячеек нули. Кроме того меняет размеры ячейки и ее заливку цветом делает, как в исходной
Изменено: DJI - 17.03.2017 16:25:48
 
Цитата
DJI написал:
Это очень долго...Тем более он тогда ставит вместо пустых ячеек нули.
Побеждаем обе сразу.
Делаем все видимым (иначе в скрытые ячейки может не вставиться, а из-за этого еще и пойти сдвиг по формулам, в результате часть из них будет ссылаться не туда)
В верхнюю левую вводим:
Код
=ЕСЛИ(ДЛСТР(A1786);A1786;"")
Копируем.
Выделяем весь диапазон. Держа SHIFT, можно раздвигать выделяемый диапазон клавишами Page Up, Page Down, можно мышью сместиться и, держа SHIFT, кликнуть левой кнопкой по дальней границе выделяемого диапазона.
Специальной вставкой вставляем только ФОРМУЛЫ.

Если честно, конечная задача сформулирована нечетко: непонятно при каких условиях и что слетает. Лучше всего, конечно, маленький кусочек данных (конфиденциальное заменить вымышленным) и конкретные примеры: как должно быть и как не надо. Тогда и какие-то механизмы проще вырисовываются. А то гадаем...
Следствие из третьего закона Чизхолма:
"Даже если ясность изложения исключает неверное толкование, все равно найдется кто-то, кто поймет Вас неправильно."
 
Много ссылок, антиспам-защита блокировала Ваше сообщение.
 
Цитата
PerfectVam написал:
Если честно, конечная задача сформулирована нечетко: непонятно при каких условиях и что слетает. Лучше всего, конечно, маленький кусочек данных (конфиденциальное заменить вымышленным) и конкретные примеры: как должно быть и как не надо. Тогда и какие-то механизмы проще вырисовываются. А то гадаем..
Предыдущее письмо заблокировалось, где я все расписал с фотками, но оно не прошло.
В общем я создал новый файл примера. Полегче.
Мне надо копировать сохраняя ширину столбцов и также ссылки на исходный лист.
В листе общее помечены ячейки которые скрываются при копировании.
В файле лист 1 получается после использования функции "=ЕСЛИ(ДЛСТР(A1786);A1786;"")"
Она грубо показывает скрытые столбцы и не сохраняет ширину столбцов.
Изменено: DJI - 20.03.2017 10:09:04
 
Давайте еще раз сначала. Смотрим файл из предыдущего поста.
http://i12.pixs.ru/storage/8/0/0/Bezimyanni_2929913_25564800.jpg
На нем желтым помечены ячейке, которые скрываются, и копироваться не будут.
Т.е. данные по 2014 году будут копироваться так
http://i12.pixs.ru/storage/8/3/0/Bezimyanni_5814206_25564830.jpg
Т.е. в итоге создаем лист "2014", копируем туда данные с сохранением ширины столбца.
Получаем.
http://i12.pixs.ru/storage/8/3/9/Bezimyanni_5527619_25564839.jpg
Но, при этом у меня нет ссылки на ячейке в листе "Общие".
А я хочу, чтобы потом я мог менять данные только в файле общие, а в листы с годами не лазил.
 
Далее, чтоб скопировать данные по 2015 году, скрываем столбец С, и копируем
http://i12.pixs.ru/storage/8/5/4/Bezimyanni_9773651_25564854.jpg
Создаем лист "2015", копируем туда данные с сохранением ширины столбца.
Получаем.
http://i12.pixs.ru/storage/8/6/1/Bezimyanni_9152410_25564861.jpg
При этом опять нет ссылки на исходный лист "Общие".
Ну и т.д.
Если использовать функцию =ЕСЛИ(ДЛСТР(A1786);A1786;"")
То получается так
http://i12.pixs.ru/storage/8/7/0/Bezimyanni_8050458_25564870.jpg
Т.е. показываются скрытые столбцы, и меняется ширина столбцов.

Еще раз поясню, мне надо копировать из листа в лист таблицу с заданной шириной столбца, в том числе со скрытыми столбцами. При этом новая таблица должна ссылаться на исходную.
Файл для примера маленький, а у меня просто огромная, размеры привел в первом сообщении.
 
Вопрос снят! Все получилось.
 
Как? Тема создана и останется мусором без ответа
 
Цитата
vikttur написал:
Как? Тема создана и останется мусором без ответа
Согласен. Прошу прощения.
Итак, как получилось у меня.
1. Копируем таблицу, создаем новый лист. Вставка кнопка" Сохранить ширину столбцов оригинала"
2. Специальная вставка - "вставить связь" (т.е. грубо говоря, копируем тоже самое второй раз)
3. Теперь чтобы убрать "0" в тех ячейках, где в исходной таблице было пусто, заходим -Файл/ Параметры/Дополнительно - Убираем галку "Показывать нули в ячйках, которые содержат нулевые значения."
Последний пункт можно выполнить сразу для нескольких листов.
Страницы: 1
Читают тему
Наверх