VBA Макросы: Вставка данных из Word в Excel

Автор Rengame113, 21 июня 2018, 16:20

Rengame113

По адресу C:\1\Книга1.xlsb лежит существующая книга. Необходимо записать переменную из Word  в ячейку A1 с сохранением записи в Excel.

Администратор

На время работы из ворда с экселем, подключите эту библиотеку, может это упростит написание макроса: Microsoft Excel версия Object Library.
Представленный ниже макрос работает, если подключена эта библиотека.
В пункте 3 укажите ваше полное имя эксель-файла.

Макрос
Sub Макрос()

    Dim ExApp As Excel.Application, bk As Excel.Workbook, sh As Excel.Worksheet
   
   
    '1. Запуск программы "Excel".
    Set ExApp = CreateObject(Class:="Excel.Application")
   
    '2. Отображение программы "Excel" на мониторе.
        ' Этот пункт нужно убрать после написания макроса, т.к. он не понадобится.
        ' Сделан для удобства написания макроса, чтобы в режиме F8 было видно,
        ' что происходит в макросе.
    ExApp.Visible = True
   
    '3. Открываем эксель-файл и назначаем ему имя "bk".
        ' Далее в коде будем обращаться к эксель-файлу по имени "bk".
    Set bk = ExApp.Workbooks.Open(FileName:="C:\Users\User\Desktop\Книга1.xlsb")
   
    '4. Назначаем первому эксель-листу имя "sh".
        ' Далее в коде будем обращаться к листу по имени "sh".
    Set sh = bk.Worksheets(1)
   
    '5. Вставляем на лист, в A1 какой-либо текст.
    sh.Range("A1").Value = "какой-либо текст"
   
    '6. Сохраняем эксель-файл.
    bk.Save
   
    '7. Закрываем эксель-файл.
        ' SaveChanges:=False - иногда при закрытии файла появляются сообщения,
        ' хотя мы вроде ничего не делали, поэтому я добавил параметр "SaveChanges".
    bk.Close SaveChanges:=False
   
    '8. Закрытие программы "Excel".
    ExApp.Quit
   
    '9. Сообщение, чтобы было понятно, что макрос завершил работу.
    MsgBox "Готово.", vbInformation

End Sub
[свернуть]

Rengame113