Как скопировать лист в excel на другой лист с формулами
Как скопировать лист в excel на другой лист с формулами
Очередная тривиальная задача сегодня просто выбесила, а именно в грёбанном экселе понадобилось скопировать лист с формулами из одной книги в другую. Причём формул там over9000 — генерация Актов по приёмкам узлов учёта.
Всё началось с того что файлик экселя распух до 35 метров и я решил бодренько пересохранить его.
Однако при замене основного листа на листе актов тут же херились все ссылки, а при копировании этого же листа из другой книги — грамотный офис делал перелинковку на старый файл. И это fail, от которого не отмазаться (ну, у меня в 2010м офисе не получилось штатными опциями отказаться от связи с другим документом).
В итоге нагуглилось несколько вариантов:
1й — использовать функцию ДВССЫЛ(), и еще иногда функцию ИНДЕКС. ДВССЫЛ() должна заменить все ссылки в формулах на листе СВОД, тогда при копировании в др. книгу формулы будут тянуть данные из листов новой книги.
Проверять не стал, надо вариант проще.
2й — использовать макросы
Sub ATS()
Const WS_NAME = «Лист1»
Const DST_NAME = «Книга2»
Dim c As Range
With Application
.ScreenUpdating = False
.Calculation = xlCalculationManual
End With
With Worksheets(WS_NAME)
.Copy Before:=Workbooks(DST_NAME).Sheets(1)
For Each c In .UsedRange.SpecialCells(xlCellTypeFormulas).Cells
Cells(c.Row, c.Column).Formula = c.Formula
Next
End With
With Application
.Calculation = xlCalculationAutomatic
.ScreenUpdating = True
End With
End Sub
Const WS_NAME = «СВОД»
Dim c As Range
Dim filename As String
iOpen = Application.Dialogs(xlDialogOpen).Show
filename = ActiveWindow.Caption
If iOpen <> True Then
MsgBox «Вы не выбрали книгу», , «»
End If
Windows(«Экономическая часть по т.э.на 2009г со сводом.xls»).Activate
With Application
.ScreenUpdating = False
.Calculation = xlCalculationManual
End With
With Worksheets(WS_NAME)
.Copy Before:=Workbooks(filename).Sheets(1)
For Each c In .UsedRange.SpecialCells(xlCellTypeFormulas).Cells
Cells(c.Row, c.Column).Formula = c.Formula
Next
End With
With Application
.Calculation = xlCalculationAutomatic
.ScreenUpdating = True
End With
End Sub
Вариант хорош, но как бы не наше это всё, макросов у меня в книге и так хватает.
при копировании формул из книги в книгу (Правка — Специальная вставка — Формулы) обнаружил способ избавиться от связи с книгой-оригиналом.
Правка — Связи… — кнопка Изменить, и привязываем к самой книге-копии. Связи исчезают.
В Excel 2007: данные — в подключениях «изменить связи» — изменить — и выбираете новую книгу.
У себя не нашел «куда нажать» чтобы призвать эту неведомую функцию.
4й вариант: Мой любимый. Я сразу понял, что это моё!
Выделяем всё, жмем автозамену ctrl+h, заменяем «=» на «БЛАБЛАБЛА», нажимаем копировать лист в другую книгу, еще раз жмём автозамену и меняем обратно «БЛАБЛАБЛА» на «=».
Всё!
Вдруг кому срочно пригодится скопировать пару формул. Пару тысяч формул.
Копирование таблицы в Microsoft Excel
Для большинства пользователей Excel процесс копирования таблиц не представляет большой сложности. Но, далеко не все знают некоторые нюансы, которые позволяют сделать эту процедуру максимально эффективной для различного типа данных и разноплановых целей. Давайте подробно рассмотрим некоторые особенности копирования данных в программе Эксель.
Копирование в Экселе
Копирование таблицы в Excel представляет собой создание её дубликата. В самой процедуре практически нет отличий в зависимости от того, куда вы собираетесь вставить данные: в другую область того же листа, на новый лист или в другую книгу (файл). Главное отличие между способами копирования заключается в том, как вы хотите скопировать информацию: вместе с формулами или только с отображаемыми данными.
Способ 1: копирование по умолчанию
Простое копирование по умолчанию в Эксель предусматривает создание копии таблицы вместе со всеми размещенными в ней формулами и форматированием.
-
Выделяем область, которую хотим скопировать. Кликаем по выделенной области правой кнопкой мыши. Появляется контекстное меню. Выбираем в нём пункт «Копировать».
Есть и альтернативные варианты выполнение данного шага. Первый из них состоит в нажатии на клавиатуре сочетания клавиш Ctrl+C после выделения области. Второй вариант подразумевает нажатие кнопки «Копировать», которая располагается на ленте во вкладке «Главная» в группе инструментов «Буфер обмена».
Тут также существуют альтернативные варианты действий. Можно выделив ячейку нажать на клавиатуре сочетание клавиш Ctrl+V. Кроме того, можно нажать на кнопку «Вставить», которая размещена на самом левом краю ленты рядом с кнопкой «Копировать».
После этого, будет выполнена вставка данных с сохранением форматирования и формул.
Способ 2: копирование значений
Второй способ предусматривает копирование исключительно значений таблицы, которые отображаются на экране, а не формул.
- Копируем данные одним из способов, которые описывались выше.
- Кликаем правой кнопкой мыши в том месте, куда нужно вставить данные. В контекстном меню в параметрах вставки выбираем пункт «Значения».
После этого таблица будет добавлена на лист без сохранения форматирования и формул. То есть, фактически будут скопированы только отображаемые на экране данные.
Если вы хотите скопировать значения, но при этом сохранить исходное форматирование, то нужно во время вставки перейти в пункт меню «Специальная вставка». Там в блоке «Вставить значения» нужно выбрать пункт «Значения и исходное форматирование».
После этого, таблица будет представлена в первоначальном своем виде, но только вместо формул ячейки будут заполнять постоянные значения.
Если вы хотите произвести данную операцию только с сохранением форматирования чисел, а не всей таблицы, то в специальной вставке нужно выбрать пункт «Значения и форматы чисел».
Способ 3: создание копии с сохранением ширины столбцов
Но, к сожалению, даже использование исходного форматирования не позволяет сделать копию таблицы с первоначальной шириной столбцов. То есть, довольно часто бывают случаи, когда после вставки данные не помещаются в ячейки. Но в Экселе существует возможность с помощью определенных действий сохранить исходную ширину столбцов.
- Копируем таблицу любым из обычных способов.
- В месте, где нужно вставить данные, вызываем контекстное меню. Последовательно переходим по пунктам «Специальная вставка» и «Сохранить ширину столбцов оригинала».
Можно поступить и другим способом. Из контекстного меню дважды переходим в пункт с одинаковым наименованием «Специальная вставка…».
Открывается окно. В блоке инструментов «Вставить» переставляем переключатель в позицию «Ширины столбцов». Жмем на кнопку «OK».
Какой бы вы путь не выбрали из перечисленных выше двух вариантов, в любом случае, скопированная таблица будет иметь ту же ширину столбцов, что и исходник.
Способ 4: вставка в виде изображения
Бывают случаи, когда таблицу нужно вставить не в обычном формате, а в виде изображения. Эта задача также решается при помощи специальной вставки.
- Выполняем копирование нужного диапазона.
- Выбираем место для вставки и вызываем контекстное меню. Переходим в пункт «Специальная вставка». В блоке «Другие параметры вставки» выбираем пункт «Рисунок».
После этого, данные будут вставлены на лист в виде изображения. Естественно, редактировать такую таблицу уже будет нельзя.
Способ 5: копирование листа
Если вы хотите скопировать полностью всю таблицу на другой лист, но при этом сохранить её абсолютно идентичной исходнику, то в этом случае, лучше всего, выполнить копирование листа целиком. В этом случае важно определить, что вы действительно желаете перенести все, что находится на исходном листе, в ином случае данный способ не подойдет.
-
Чтобы вручную не выделять все ячейки листа, а это заняло бы большое количество времени, кликаем по прямоугольнику, расположенному между горизонтальной и вертикальной панелью координат. После этого весь лист будет выделен. Чтобы скопировать содержимое, набираем на клавиатуре комбинацию Ctrl+C.
Как видим, после выполнения данных действий нам удалось скопировать лист вместе с таблицей и остальным его содержимым. При этом получилось сохранить не только исходное форматирование, но и размер ячеек.
Табличный редактор Эксель располагает обширным инструментарием для копирования таблиц именно в том виде, какой требуется пользователю. К сожалению, далеко не все знают о нюансах работы со специальной вставкой и другими инструментами копирования, которые позволяют значительно расширить возможности по переносу данных, а также автоматизировать действия пользователя.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Как копировать таблицу в Excel сохраняя формат ячеек
Тем, кто постоянно работает с Microsoft Excel, часто приходится задаваться вопросом правильного копирования данных таблицы с сохранением форматирования, формул или их значений.
Как вставить формулу в таблицу Excel и сохранить формат таблицы? Ведь при решении данной задачи можно экономить вагон времени. Для этого будем использовать функцию «Специальная вставка» – это простой инструмент, который позволяет быстро решить сложные задачи и освоить общие принципы его использования. Использование этого простого инструмента позволяет вам быстро приводить все таблицы к однообразному формату и получать тот результат, который необходим.
Как скопировать таблицу с шириной столбцов и высотой строк
Допустим, у нас есть такая таблица, формат которой необходимо сохранить при копировании:
При копировании на другой лист привычным методом Ctrl+C – Ctrl+V. Получаем нежелательный результат:
Поэтому приходится вручную «расширять» ее, чтобы привести в удобный вид. Если таблица большая, то «возиться» придется долго. Но есть способ существенно сократить временные потери.
Способ1:Используем специальную вставку
- Выделяем исходную таблицу, которую нам необходимо скопировать, нажимаем на Ctrl+C.
- Выделяем новую (уже скопированную) таблицу, куда нам необходимо формат ширины столбцов и нажимаем на ячейку правой кнопкой мыши, после чего в выпадающем меню находим раздел «Специальная вставка».
- Выбираем в нем необходимый пункт напротив опции «ширина столбцов», нажимаем «ОК».
Она получила исходные параметры и выглядит идеально точно.
Способ 2: Выделяем столбцы перед копированием
Секрет данного способа в том, что если перед копированием таблицы выделить ее столбцы вместе с заголовками, то при вставке ширина каждого столбца будет так же скопирована.
- Выделяем столбцы листов которые содержат исходные данные.
- Копируем и вставляем быстро получая желаемый результат.
Для каждого случая рационально применять свой способ. Но стоит отметить, что второй способ позволяет нам не только быстро переносить таблицу вместе с форматом, но и копировать высоту строк. Ведь в меню специальной вставки нет опции «высоту строк». Поэтому для решения такой задачи следует действовать так:
- Выделяем целые строки листа, которые охватывают требуемый диапазон данных:
- Ниже вставляем ее копию:
Полезный совет! Самый быстрый способ скопировать сложную и большую таблицу, сохранив ее ширину столбцов и высоту строк – это копировать ее целым листом. О том, как это сделать читайте: копирование и перемещение листов.
Вставка значений формул сохраняя формат таблицы
Специальная вставка хоть и не идеальна, все же не стоит недооценивать ее возможности. Например, как вставить значение формулы в таблицу Excel и сохранить формат ячеек.
Чтобы решить такую задачу следует выполнить 2 операции, используя специальную вставку в Excel.
Операция I:
- Выделяем исходную таблицу с формулами и копируем.
- В месте где нужно вставить диапазон данных со значениями (но уже без формул), выбираем опцию «значения». Жмем ОК.
Операция II:
Так как скопированный диапазон у нас еще находится в буфере обмена после копирования, то мы сразу еще раз вызываем специальную вставку где выбираем опцию «форматы». Жмем ОК.
Мы вставили значения формул в таблицу и сохранили форматы ячеек. Как вы догадались можно сделать и третью операцию для копирования ширины столбцов, как описано выше.
Полезный совет! Чтобы не выполнять вторую операцию можно воспользоваться инструментом «формат по образцу».
Microsoft Excel предоставляет пользователям практически неограниченные возможности для подсчета простейших функций и выполнения ряда других процедур. Использование программы позволяет устанавливать форматы, сохранять значения ячеек, работать с формулами, переносить и изменять их, таким образом, как это удобно для пользователей.
Копирование и вставка формулы в другую ячейку или на другой лист
Когда вы копируете формулы в другое место, вы можете выбрать параметры вставки, зависящие от формулы, в конечных ячейках (ах).
Ниже объясняется, как скопировать и вставить формулу.
Выделите ячейку с формулой, которую вы хотите скопировать.
Выберите Главная > Копировать или нажмите клавиши CTRL+C.
На том же листе или другом листе щелкните ячейку, в которую нужно вставить формулу.
Чтобы вставить формулу с форматированием, нажмите кнопку главная > Вставить или нажмите клавиши CTRL + V.
Для других параметров вставки формулы щелкните стрелку под кнопкой Вставить и выберите один из вариантов:
Формулы для вставки только формул.
Значения для вставки только значения (результат формулы).
Совет: Скопировать формулы в смежные ячейки листа также можно с помощью маркера заполнения.
Проверка и исправление ссылок на ячейки в новом месте
После копирования формулы в новое место важно убедиться, что все ссылки на ячейки указаны правильно. Ссылки могли измениться в зависимости от их типа (абсолютный или относительный).
Например, при копировании формулы на две ячейки вниз и справа от ячейки a1 ссылки на ячейки будут обновляться в соответствии с приведенными ниже сведениями.
$A$1 (абсолютный столбец и абсолютная строка)
A$1 (относительный столбец и абсолютная строка)
$A1 (абсолютный столбец и относительная строка)
A1 (относительный столбец и относительная строка)
Если ссылки на ячейки в формуле не дают результата, попробуйте переключиться на другие типы ссылок:
Выделите ячейку, содержащую формулу.
В строке формул выберите ссылку, которую вы хотите изменить.
Нажмите клавишу F4, чтобы переключиться между абсолютными и относительными ссылками, а затем выберите нужный вариант.
Дополнительные сведения об абсолютных и относительных ссылках на ячейки можно найти в разделе Обзор формул.
Перенос формулы в другое место
Если при перемещении формулы в другое место на том же или другом листе, в отличие от копирования формулы, ссылки на ячейки в формуле не изменяются — независимо от типа используемых ссылок на ячейки.
Чтобы переместить формулу, выполните указанные ниже действия.
Щелкните ячейку с формулой, которую вы хотите переместить.
Нажмите кнопку главная вырежьте
или нажмите клавиши CTRL + X.
На одном листе или другом листе щелкните ячейку, в которую нужно вставить формулу.
Чтобы вставить формулу с форматированием, нажмите кнопку главная > Вставить или нажмите клавиши CTRL + V.
Для других параметров вставки формулы щелкните стрелку под кнопкой Вставить и выберите:
Формулы только для вставки только формул.
Значения для вставки результата формулы (результат формулы).
Когда вы копируете формулы в другое место, вы можете выбрать параметры вставки, зависящие от формулы, в конечных ячейках. Ниже объясняется, как скопировать и вставить формулу.
Выделите ячейку с формулой, которую хотите скопировать.
Выберите Главная > Копировать или нажмите клавиши CTRL+C.
Щелкните ячейку, в которую нужно вставить формулу.
Если ячейка находится на другом листе, перейдите на него и выберите эту ячейку.
Чтобы вставить формулу с форматированием, нажмите кнопку главная > Вставить или нажмите клавиши CTRL + V.
Для других параметров вставки формулы щелкните стрелку под кнопкой Вставить и выберите:
Вставка формул для вставки только формул
Вставка значений только для вставки результата формулы.
Убедитесь, что ссылки на ячейки указаны правильно для нового местоположения.
Совет: Скопировать формулы в смежные ячейки листа также можно с помощью маркера заполнения.
Вы также можете использовать сочетание клавиш CTRL + X для перемещения формулы.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.
Примечание: Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Была ли информация полезной? Для удобства также приводим ссылку на оригинал (на английском языке).
Как перемещать и копировать листы или их данные в Excel
В этом курсе:
Листы можно перемещать или копировать в пределах одной книги, чтобы упорядочить содержащиеся в ней данные.
С помощью команды Переместить или скопировать лист можно полностью переместить или скопировать листы в пределах одной или нескольких книг. Чтобы переместить или скопировать часть данных на другие листы или в другие книги, можно использовать команды Вырезать и Копировать.
Перемещение листа в книге
Щелкните ярлычок листа и перетащите его в нужное место.
Внимание: После перемещения листа в другую книгу проверьте все формулы и диаграммы, которые ссылаются на данные этого листа: в результате этой операции в книге могут появиться ошибки или неожиданные результаты. Точно так же, если вы перемещаете лист, на который ссылается трехмерные ссылки, вычисление может включать или отключать данные на листе.
Копирование листа в одной книге
Удерживая нажатой клавишу CTRL, перетащите ярлычок листа на нужное место.
Щелкните ярлычок листа правой кнопкой мыши и выберите команду Переместить или скопировать.
Установите флажок Создать копию.
В разделе перед листом укажите, куда вы хотите поместить копию.
Нажмите кнопку ОК.
Если данные требуется переупорядочить, можно менять порядок листов в книге, а также копировать и перемещать листы в другие книги. Обратите внимание на то, что после перемещения листа в вычислениях и на диаграммах, в основе которых лежат содержащиеся на нем данные, могут использоваться неправильные значения.
Перемещение листа
Перетащите ярлычок листа в нужное место в строке ярлычков.
Копирование листа
Нажмите и удерживайте клавишу OPTION.
Перетащите ярлычок листа в строке ярлычков в место, где нужно создать копию.
Важно: Отпустите сначала кнопку мыши, а затем — клавишу OPTION.
Перемещение листа в другую книгу
Внимание: После перемещения листа в другую книгу проверьте все формулы и диаграммы, которые ссылаются на данные этого листа: в результате этой операции в книге могут появиться ошибки или неожиданные результаты. Точно так же, если вы перемещаете лист, на который ссылается трехмерные ссылки, вычисление может включать или отключать данные на листе.
Откройте книгу, в которую требуется переместить лист.
В меню Окно щелкните книгу, в которую входит перемещаемый лист.
Щелкните лист, который требуется скопировать в другую книгу.
В меню Правка выберите пункты Лист > Переместить или скопировать лист.
В меню В книгу выберите книгу, в которую требуется переместить лист.
Совет: Чтобы создать новую книгу и переместить в нее лист, выберите вариант новая книга.
В поле Перед листом выберите лист, перед которым нужно вставить перемещаемый лист, или вариант переместить в конец.
Нажмите кнопку ОК.
Копирование листа в другую книгу
Откройте книгу, в которую требуется скопировать лист.
В меню Окно щелкните книгу, в которую входит копируемый лист.
Выберите лист, который требуется скопировать.
В меню Правка выберите пункты Лист > Переместить или скопировать лист.
В меню В книгу выберите книгу, в которую требуется скопировать лист.
Совет: Чтобы создать новую книгу и переместить в нее лист, выберите вариант новая книга.
В поле Перед листом выберите лист, перед которым нужно вставить скопированный лист, или вариант переместить в конец.
Установите флажок Создать копию.
Нажмите кнопку ОК.
Изменение цвета ярлычка листа
Изменение цвета ярлычков листов может облегчить отслеживание информации в больших книгах.
Удерживая клавишу CONTROL, щелкните ярлычок листа.
Выберите команду Цвет ярлычка и укажите нужный цвет.
В Excel Online вы можете дублировать (или скопировать) листы в текущей книге. Просто щелкните правой кнопкой мыши имя ярлычка в нижней части листа и выберите команду Дублировать.
Примечание: При дублировании листа, содержащего диаграмму, рисунок или фигуру, может появиться сообщение об ошибке. В этом случае лист можно продублировать вручную.
Если ваш лист содержит элементы, из-за которых его невозможно продублировать, можно создать его копию вручную, скопировав все данные и вставив их на новый лист. Вот как это сделать:
Выделите все данные на листе.
Сочетание клавиш: нажмите клавиши CTRL + ПРОБЕЛ, а затем нажмите клавиши Shift + пробел.
Скопируйте все данные на листе, нажав клавиши CTRL + C.
Щелкните знак плюса (+), чтобы добавить пустой лист.
Щелкните первую ячейку в новом листе и нажмите клавиши CTRL + V, чтобы вставить данные.
Примечание: При вставке ячеек на новый лист примененное к ним условное форматирование будет потеряно.
В Excel Online возможность переместить или скопировать лист недоступна, если щелкнуть правой кнопкой мыши ярлычок листа, который находится в классическом приложении Excel. В Excel Online вы можете добиться того же результата, скопировав все данные на листе и вставив его на пустой лист в другой книге.
Чтобы переместить или скопировать лист в другую книгу в Excel Online, выполните указанные ниже действия.
Выделите все данные на листе.
Сочетание клавиш: нажмите клавиши CTRL + ПРОБЕЛ, а затем — клавиши Shift + пробел.
Скопируйте все данные на листе, нажав клавиши CTRL + C.
Откройте книгу, в которую необходимо вставить данные, и щелкните знак «плюс» (+) в строке состояния, чтобы добавить новый пустой лист.
Щелкните первую ячейку в новом листе, а затем нажмите клавиши CTRL + V, чтобы вставить данные на этот лист.
Примечание: При вставке ячеек в другую книгу примененное к ним условное форматирование будет потеряно.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.
Примечание: Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Была ли информация полезной? Для удобства также приводим ссылку на оригинал (на английском языке).