Я пытаюсь написать метод переноса таблиц в Word с помощью Visual Basic и объектной модели Excel. Тем не менее, у меня возникли проблемы с использованием специальной пасты с скопированным объектом Word, поскольку это не просто текст.Перемещение таблиц в Word с помощью VBA
Можно ли принудительно вставить обычную текстовую пасту с транспозицией? Есть лучший способ сделать это?
Мой текущий код выглядит следующим образом:
Public Sub transposeTable()
Selection.Copy
Dim oXlApp As New Excel.Application
Dim oXlBook As Excel.Workbook
Set oXlApp = CreateObject(Class:="Excel.Application")
Set oXlBook = oXlApp.Workbooks.Add
oXlBook.Sheets(1).Range("A1").Select
oXlApp.ActiveCell.PasteSpecial Transpose:=True
oXlBook.Sheets(1).Cells.SpecialCells(xlCellTypeConstants).Select
oXlApp.Selection.Copy
Selection.Paste
End Sub
Ошибка Я ПОЛУЧАТЬ является:
Run-time error '1004':
PasteSpecial method of Range class failed
Для дальнейшего использования вам нужно добавить ссылку на «Библиотека объектов Microsoft Excel» в «Инструменты» -> «Ссылки ...» окна редактора VB, иначе это вызовет ошибки. – James