Скопировать лист в excel в другую книгу

Скопировать лист в excel в другую книгу

При формировании сводных отчетов в Microsoft Office Excel необходимо собирать информацию из нескольких источников, в том числе и из других рабочих книг. Однако не всегда удается полностью переместить данные из одного места в другое целым листом. Сегодня разберемся, как скопировать лист в excel.

Первый способ

Чтобы переместить данные на другой лист без изменений, можно поступить следующим образом:

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

2. На клавиатуре нажимаете Ctrl+C или кнопку Копировать в блоке Буфер обмена

3. Переходите на нужный лист и нажимаете Ctrl+V или Вставить.

Второй способ

Чтобы скопировать рабочий лист в другой файл excel, можно воспользоваться меню, которое вызывается нажатием правой клавишей мыши по ярлычку листа. Затем выбираете нужную строку из списка.

Появится новое диалоговое окно, где выбираете в какой файл и перед каким листом будет располагаться копируемая информация. Обязательно ставите галочку напротив создать копию.

Как видите, скопировать лист в другую книгу можно двумя способами, которые одинаково качественно выполнят задачу по дублированию данных без потери содержимого. Стоит отметить, что для редакторов 2007, 2010 и 2016 года выпуска процедура копирования большого количества информации одинакова.

Жми «Нравится» и получай только лучшие посты в Facebook ↓

Очередная тривиальная задача сегодня просто выбесила, а именно в грёбанном экселе понадобилось скопировать лист с формулами из одной книги в другую. Причём формул там over9000 — генерация Актов по приёмкам узлов учёта.

Всё началось с того что файлик экселя распух до 35 метров и я решил бодренько пересохранить его.

Однако при замене основного листа на листе актов тут же херились все ссылки, а при копировании этого же листа из другой книги — грамотный офис делал перелинковку на старый файл. И это fail, от которого не отмазаться (ну, у меня в 2010м офисе не получилось штатными опциями отказаться от связи с другим документом).

Читайте также:  Наши покровители half life 2

В итоге нагуглилось несколько вариантов:

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, заменяем «=» на «БЛАБЛАБЛА», нажимаем копировать лист в другую книгу, еще раз жмём автозамену и меняем обратно «БЛАБЛАБЛА» на «=».
Всё!

Читайте также:  Фотострана noreply fotostrana ru

Вдруг кому срочно пригодится скопировать пару формул. Пару тысяч формул.

Копирует лист в другое расположение в текущей или новой книге. Copies the sheet to another location in the current workbook or a new workbook.

Синтаксис Syntax

Expression. Копирование (До, после) expression.Copy (Before, After)

Expression (выражение ) Переменная, представляющая объект листа . expression A variable that represents a Worksheet object.

Параметры Parameters

Имя Name Обязательный или необязательный Required/Optional Тип данных Data type Описание Description
Before Before Необязательный Optional Variant Variant Лист, на котором будет размещаться скопированный лист. The sheet before which the copied sheet will be placed. Вы не можете указать Before , если указать After. You cannot specify Before if you specify After.
After After Необязательный Optional Variant Variant Лист, после которого будет размещаться скопированный лист. The sheet after which the copied sheet will be placed. Вы не можете указать After , если вы указали Before. You cannot specify After if you specify Before.

Примечания Remarks

Если вы не укажете до или после, Microsoft Excel создаст новую книгу, содержащую скопированный объект листа . If you don’t specify either Before or After, Microsoft Excel creates a new workbook that contains the copied Worksheet object. Только что созданная книга содержит свойство Application. активеворкбук и содержит один лист. The newly created workbook holds the Application.ActiveWorkbook property and contains a single worksheet. На отдельном листе хранятся свойства Name и кодового листа исходного листа. The single worksheet retains the Name and CodeName properties of the source worksheet. Если скопированный лист удерживал лист кода листа в проекте VBA, он также переносится в новую книгу. If the copied worksheet held a worksheet code sheet in a VBA project, that is also carried into the new workbook.

Читайте также:  Почему не могу зайти в облако

Выбор массива из нескольких листов может быть скопирован в новый пустой объект книги подобным образом. An array selection of multiple worksheets can be copied to a new blank Workbook object in a similar manner.

Пример Example

В этом примере копируется Лист1, после чего помещается копия после Sheet3. This example copies Sheet1, placing the copy after Sheet3.

В этом примере сначала копируется лист Лист1 в новую пустую книгу, после чего новая книга сохраняется и закрывается. This example first copies Sheet1 to a new blank workbook, and then saves and closes the new workbook.

В этом примере показано, как скопировать листы Лист1, Лист2 и Sheet4 в новую пустую книгу, а затем сохранить и закрыть новую книгу. This example copies worksheets Sheet1, Sheet2, and Sheet4 to a new blank workbook, and then saves and closes the new workbook.

Поддержка и обратная связь Support and feedback

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Have questions or feedback about Office VBA or this documentation? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь. Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.

Ссылка на основную публикацию
Adblock detector