Как скопировать userform в excel в той же книге

Обновлено: 06.07.2024

Копирует лист в другое расположение в текущей книге или новой книге.

Синтаксис

выражения. Copy (Before, After)

выражение Переменная, представляюная объект "Таблица".

Параметры

Имя Обязательный или необязательный Тип данных Описание
Before Необязательный Variant Лист, перед которым будет размещен скопирован лист. Вы не можете указать Перед, если указать После.
After Необязательный Variant Лист, после которого будет размещен скопирован лист. Вы не можете указать После, если вы укажите Before.

Примечания

Если вы не указываете ни до, ни после, Microsoft Excel создает новую книгу, которая содержит скопированные объекты таблицы. Недавно созданная книга содержит свойство Application.ActiveWorkbook и содержит одну таблицу. В единой таблице сохраняются свойства name и CodeName исходных таблиц. Если скопированная таблица держала лист кода листа в проекте VBA, то это также осуществляется в новой книге.

Выбор массива из нескольких листов можно скопировать на новый пустой объект книги аналогичным образом.

Источник и назначение должны быть в одном Excel. Пример приложения, в противном случае он вызывает ошибку времени запуска '1004': Нет такого интерфейса поддерживается, если что-то подобное было использовано, или ошибка времени запуска Sheet1.Copy objWb.Sheets(1) '1004': Метод копирования класса Worksheet не удалось, если что-то подобное ThisWorkbook.Worksheets("Sheet1").Copy objWb.Sheets(1) было использовано.

Пример

В этом примере копируется Sheet1, размещая копию после Sheet3.

В этом примере сначала скопируется sheet1 в новую пустую книгу, а затем сохраняется и закрывается новая книга.

В этом примере листы Sheet1, Sheet2 и Sheet4 копируется в новую пустую книгу, а затем сохраняет и закрывает новую книгу.

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

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.

Если книга содержит макрос Visual Basic для приложений(VBA),который вы хотите использовать в другом месте, вы можете скопировать модуль, содержащий этот макрос, в другую открытую книгу с помощью редактора Visual Basic(VBE).

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

Чтобы Windows, перейдите в меню Параметры > >Настроить ленту.

Для Macперейдите на Excel > параметры. >ленты & панели инструментов.

Затем в разделе Настройка ленты в разделе Основные вкладкиубедитесь в том, что в разделе Разработчик.

Общие сведения о макросах и VBA

Если вы не знакомы с макросами и VBA в целом, вам могут пригодиться следующие сведения:

Макрос — это действие или набор действий, которые можно использовать для автоматизации задач.

Макрос можно записать с помощью команды Запись макроса на вкладке Разработчик.

Макрос записуется на языке программирования VBA.

Вы можете проверить и изменить макрос в редакторе Visual Basic, которое открывается Excel. Вот пример окна VBE для Windows:

Модуль, содержащий два макроса, которые хранятся в Модуле1 в Книге1

Макрос с именами MakeCellGreen и SetRowHeight находится в модуле Module1,который хранится в книге Book1.

Копирование модуля из одной книги в другую

Откройте книгу, содержаную макрос, который вы хотите скопировать, и книгу, в которую вы хотите его скопировать.

На вкладке Разработчик щелкните Visual Basic, чтобы открыть редактор Visual Basic редактора.

В редакторе Visual Basic меню Вид выберите Project проводник или нажмите CTRL+R .

В области Project проводника перетащите модуль, содержащий макрос, который нужно скопировать в 9-ю книгу. В этом случае мы копируете Module1 из Book2.xlsm в Book1.xlsm.

Окно проекта VBA

Модуль1, скопирован из Book2.xlsm

Копия модуля1, скопированная в Book1.xlsm

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

Листы можно перемещать или копировать в пределах одной книги, чтобы упорядочить содержащиеся в ней данные.

Браузер не поддерживает видео.

С помощью команды Переместить или скопировать лист можно полностью переместить или скопировать листы в пределах одной или нескольких книг. Чтобы переместить или скопировать часть данных на другие листы или в другие книги, можно использовать команды Вырезать и Копировать.

Перемещение листа в книге

Щелкните ярлычок листа и перетащите его в нужное место.

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

Копирование листа в одной книге

Удерживая нажатой клавишу CTRL, перетащите ярлычок листа на нужное место.

Щелкните ярлычок листа правой кнопкой мыши и выберите команду Переместить или скопировать.

Установите флажок Создать копию.

В разделе перед листом укажите, куда вы хотите поместить копию.

Если данные требуется переупорядочить, можно менять порядок листов в книге, а также копировать и перемещать листы в другие книги. Обратите внимание на то, что после перемещения листа в вычислениях и на диаграммах, в основе которых лежат содержащиеся на нем данные, могут использоваться неправильные значения.

Перемещение листа

Перетащите ярлычок листа в нужное место в строке ярлычков.

Копирование листа

Нажмите и удерживайте клавишу OPTION.

Перетащите ярлычок листа в строке ярлычков в место, где нужно создать копию.

Важно: Отпустите сначала кнопку мыши, а затем — клавишу OPTION.

Перемещение листа в другую книгу

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

Откройте книгу, в которую требуется переместить лист.

В меню Окно щелкните книгу, в которую входит перемещаемый лист.

Щелкните лист, который требуется скопировать в другую книгу.

В меню Правка выберите пункты Лист > Переместить или скопировать лист.

В меню В книгу выберите книгу, в которую требуется переместить лист.

Совет: Чтобы создать новую книгу и переместить в нее лист, выберите вариант новая книга.

В поле Перед листом выберите лист, перед которым нужно вставить перемещаемый лист, или вариант переместить в конец.

Копирование листа в другую книгу

Откройте книгу, в которую требуется скопировать лист.

В меню Окно щелкните книгу, в которую входит копируемый лист.

Выберите лист, который требуется скопировать.

В меню Правка выберите пункты Лист > Переместить или скопировать лист.

В меню В книгу выберите книгу, в которую требуется скопировать лист.

Совет: Чтобы создать новую книгу и переместить в нее лист, выберите вариант новая книга.

В поле Перед листом выберите лист, перед которым нужно вставить скопированный лист, или вариант переместить в конец.

Установите флажок Создать копию.

Изменение цвета ярлычка листа

Изменение цвета ярлычков листов может облегчить отслеживание информации в больших книгах.

Удерживая клавишу CONTROL, щелкните ярлычок листа.

Выберите команду Цвет ярлычка и укажите нужный цвет.

В Excel в Интернете можно дублировать (или копировать) книги. Просто щелкните правой кнопкой мыши имя ярлычка в нижней части листа и выберите команду Дублировать.

Если ваш лист содержит элементы, из-за которых его невозможно продублировать, можно создать его копию вручную, скопировав все данные и вставив их на новый лист. Вот как это сделать:

Выделите все данные на листе.

Сочетания клавиш. Нажмите клавиши CTRL+ПРОБЕЛ на клавиатуре, а затем клавиши SHIFT+ПРОБЕЛ.

Скопируйте все данные на листе, нажав CTRL+C.

Щелкните знак плюса (+), чтобы добавить пустой лист.

Щелкните первую ячейку на новом листе и нажмите CTRL+V, чтобы ввести данные.

Примечание: При вставке ячеек на новый лист примененное к ним условное форматирование будет потеряно.

В Excel в Интернете, если щелкнуть правой кнопкой мыши явку листа, как в настольном приложении Excel, вы не сможете переместить или скопировать лист. В Excel в Интернете вы можете получить такой же результат, скопируя все данные на листе и вкопив их на пустой лист в другой книге.

Чтобы переместить или скопировать книгу в другую книгу в Excel в Интернете, выполните указанные Excel в Интернете.

Выделите все данные на листе.

Сочетания клавиш: нажмите клавиши CTRL+ПРОБЕЛ, а затем клавиши SHIFT+ПРОБЕЛ.

Скопируйте все данные на листе, нажав CTRL+C.

Откройте книгу, в которую необходимо вставить данные, и щелкните знак "плюс" (+) в строке состояния, чтобы добавить новый пустой лист.

Щелкните первую ячейку нового таблицы, а затем нажмите CTRL+V, чтобы ввести данные на этот.

Примечание: При вставке ячеек в другую книгу примененное к ним условное форматирование будет потеряно.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

Создайте или откройте файл Excel с расширением .xlsm (Книга Excel с поддержкой макросов) или с расширением .xls в старых версиях приложения.

Перейдите в редактор VBA, нажав сочетание клавиш «Левая_клавиша_Alt+F11».

В открывшемся окне редактора VBA выберите вкладку «Insert» главного меню и нажмите кнопку «UserForm». То же подменю откроется при нажатии на вторую кнопку (после значка Excel) на панели инструментов.


На экране редактора VBA появится новая пользовательская форма с именем «UserForm1»:


Добавление элементов управления

Обычно вместе с пользовательской формой открывается панель инструментов «Toolbox», как на изображении выше, с набором элементов управления формы. Если панель инструментов «Toolbox» не отобразилась, ее можно вызвать, нажав кнопку «Toolbox» во вкладке «View»:


При наведении курсора на элементы управления появляются подсказки.

Найдите на панели инструментов «Toolbox» элемент управления с подсказкой «TextBox», кликните по нему и, затем, кликните в любом месте рабочего поля формы. Элемент управления «TextBox» (текстовое поле) будет добавлен на форму.

Найдите на панели инструментов «Toolbox» элемент управления с подсказкой «CommandButton», кликните по нему и, затем, кликните в любом месте рабочего поля формы. Элемент управления «CommandButton» (кнопка) будет добавлен на форму.

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


Нажатием клавиши «F4» вызывается окно свойств, с помощью которого можно вручную задавать значения свойств пользовательской формы и элементов управления. В окне свойств отображаются свойства выбранного элемента управления или формы, если выбрана она. Также окно свойств можно вызвать, нажав кнопку «Properties Window» во вкладке «View».

Отображение формы на экране

Чтобы запустить пользовательскую форму для просмотра из редактора VBA, необходимо выбрать ее, кликнув по заголовку или свободному от элементов управления полю, и совершить одно из трех действий:

  • нажать клавишу «F5»;
  • нажать на треугольник на панели инструментов (на изображении выше треугольник находится под вкладкой «Debug»);
  • нажать кнопку «Run Sub/UserForm» во вкладке «Run».

Для запуска пользовательской формы с рабочего листа Excel, можно использовать кнопки, описанные в этой статье. Например, чтобы отобразить форму с помощью «кнопки – элемента ActiveX», используйте в модуле рабочего листа следующий код:

Читайте также: