image

В этой статье мы узнаем, как скопировать данные из одной книги на разные листы в Microsoft Excel 2010.

Чтобы скопировать данные из Excel в файл с помощью VBA, нам нужно получить доступ к приложению Word с помощью Excel VBA. В этом руководстве мы узнаем, как открыть приложение Word, добавить документ и скопировать в него данные из Excel.

В этой статье мы будем использовать метод Early Binding для создания объекта word application вместо использования позднего связывания. Подробнее об этом можно прочитать здесь.

Процесс копирования данных Excel в файл Word с помощью Excel VBA Чтобы скопировать данные из Excel в файл Word с помощью VBA, нам, конечно же, сначала нужно открыть приложение Word. Затем добавьте к нему документ (если хотите новый документ). Скопируйте данные из файла Excel. Выделите абзац в документе и вставьте его. Наконец, сохраните и закройте документ. Каждый из этих шагов можно легко выполнить из Excel. Вам не нужно будет взаимодействовать с документом Word.

Давайте начнем с примера, не углубляясь в теорию. Потому что Железный Человек сказал: «Иногда нужно бежать, прежде чем ты научишься ходить».

Пример: вставка данных Excel в Word с помощью VBA. Приведенный ниже код является примером того, как вы можете скопировать некоторый диапазон Excel, вставить его в новый документ Word и сохранить его на диске для использования позже
'VBA Code To Write to Copy data from Excel to A Document

Sub ExcelToWord()

'Using Early Binding

Dim wordApp As Word.Application

Dim mydoc As Word.Document





'Creating a new instance of word only if there no other instances

Set wordApp = New Word.Application





'Making word App Visible

wordApp.Visible = True



'Creating a new document

Set mydoc = wordApp.Documents.Add()



'copying the content from excel sheet

ThisWorkbook.Worksheets("sheet1").Range("A1:g20").Copy

'Pasting on the document

mydoc.Paragraphs(1).Range.PasteExcelTable _

LinkedToExcel:=False, _

WordFormatting:=False,

RTF:=False

'saving the document

mydoc.SaveAs2 "MyDoc"



'closing the document

mydoc.Close



'Emptying the Clipboard

CutCopyMode = False



End Sub

Пояснение к Кодексу:

Я объяснил каждый шаг самого кода, используя комментарии, но давайте немного поговорим о строках, которые мы использовали в этом подразделе.

'Created variables of word application and document type

Dim wordApp As Word.Application

Dim mydoc As Word.Document

Здесь мы объявили две переменные требуемых типов. Мы можем это сделать, потому что уже добавили ссылку на слово «приложение». Вы можете сделать это, перейдя к инструментам в меню. Найдите опцию «Ссылки», а затем найдите слово «ссылка».

image

'Creating a new instance of word only if there no other instances

Set wordApp = New Word.Application





'Making word App Visible

wordApp.Visible = True



'Creating a new document

Set mydoc = wordApp.Documents.Add()

В первой строке выше мы назначаем переменной wordApp объект типа Word.App с помощью ключевого слова New. Это откроет приложение Word.

Во второй строке мы делаем видимым слово application, чтобы с ним можно было работать.

В следующей строке мы добавляем новый документ в текстовое приложение с помощью функции Word.Documents.Add (). Это хранится в переменной mydoc.

'copying the content from excel sheet

ThisWorkbook.Worksheets («sheet1»). Range («A1: G20»). Copy Здесь мы просто копируем диапазон из excel. Вы, должно быть, делали это раньше. Он хранится в буфере обмена.

'Pasting on the document

mydoc.Paragraphs(1).Range.PasteExcelTable _

LinkedToExcel:=False, _

WordFormatting:=False,

RTF:=False

Мы используем метод PasteExcelTable класса Paragraph.Range mydoc для вставки данных из буфера обмена.

'saving the document

mydoc.SaveAs2 "MyDoc"



'closing the document

mydoc.Close



'Emptying the Clipboard

CutCopyMode = False

Сохраняем документ под именем MyDoc. Затем закрываем документ с помощью функции Close. Наконец, мы освобождаем буфер обмена, чтобы его могли использовать другие.

Надеюсь, эта статья о том, как скопировать данные из одной книги на разные листы в Microsoft Excel 2010, носит пояснительный характер. Дополнительные статьи о вычислении значений и соответствующих формулах Excel можно найти здесь. Если вам понравились наши блоги, поделитесь ими с друзьями на Facebook. А также вы можете подписаться на нас в Twitter и Facebook. Мы будем рады услышать от вас, дайте нам знать, как мы можем улучшить, дополнить или усовершенствовать нашу работу и сделать ее лучше для вас. Напишите нам на [email protected].

Статьи по теме:

link: / general-themes-in-vba-vba-variables-in-excel [переменные VBA в Excel]: VBA означает Visual Basic для приложений.

Это язык программирования от Microsoft. Он используется с приложениями Microsoft Office, такими как MSExcel, MS-Word и MS-Access, тогда как переменные VBA являются конкретными ключевыми словами.

link: / general-themes-in-vba-excel-vba-variable-scope [Область переменных Excel VBA]: Во всех языках программирования у нас есть спецификаторы доступа к переменным, которые определяют, откуда можно получить доступ к определенной переменной. Excel VBA — не исключение. VBA тоже имеет спецификаторы области видимости.

link: / cells-range-rows-and-columns-in-vba-what-is-the-difference-between-byref-and-byval-arguments-vba-interval-question [ByRef and ByVal Arguments]: Когда аргумент передается как аргумент ByRef другой подгруппе или функции, отправляется ссылка на фактическую переменную. Любые изменения, внесенные в копию переменной, будут отражены в исходном аргументе.

link: / files-workbook-and-worksheets-in-vba-add-and-save-new-workbook-using-vba-in-microsoft-excel [Добавить и сохранить новую книгу с помощью VBA в Microsoft Excel 2016]: В этом коде мы сначала создали ссылку на объект книги. Преимущество этого подхода в том, что вы можете легко выполнять операции с этой новой книгой.

Как сохранение, закрытие, удаление и т. Д.

Популярные статьи:

link: / tips-if-condition-in-excel [Как использовать функцию ЕСЛИ в Excel]: оператор IF в Excel проверяет условие и возвращает конкретное значение, если условие истинно, или другое конкретное значение, если ЛОЖЬ .

link: / formulas-and-functions-Introduction-of-vlookup-function [Как использовать функцию VLOOKUP в Excel]: это одна из наиболее часто используемых и популярных функций Excel, которая используется для поиска значений из разных диапазонов и листы.

link: / excel-formula-and-function-excel-sumif-function [Как использовать функцию СУММЕСЛИ в Excel]: Это еще одна важная функция панели инструментов. Это поможет вам суммировать значения для конкретных условий.

link: / tips-countif-in-microsoft-excel [Как использовать функцию СЧЁТЕСЛИ в Excel]: Подсчет значений с условиями с помощью этой удивительной функции. Вам не нужно фильтровать данные для подсчета определенных значений. Функция Countif важна для подготовки вашей приборной панели.