Я недавно преобразовал записи таблицы Excel в таблицу. У меня есть необходимость скопировать данные в PowerPoint, как показано в коде 1 ниже. Однако мне не нужна вся строка, только, скажем, все столбцы, кроме последнего в таблице 1 ниже.
Что касается таблицы 1, то следует скопировать следующее:
1 | Lorem
Первоначально, когда это была не таблица, я мог просто делать то, что сейчас комментировалось. Но в настоящее время это таблица с ActiveSheet.ListObjects ("table1"). ListRows (1) .Range "Я могу выбрать только целые строки (я хочу, чтобы вся строка минус последний столбец). Добавление «.cells» за ним только выделяет конкретную c ячейку, а не строку.
Есть ли способ скопировать строку из таблицы без последнего столбца, или я должен изменить метод копирования и вставки?
Таблица 1 :
ID | SomeData | HashForUpdates
1 | Lorem | b1Z3p
2 | Ipsum | a832H
Код 1
'Code 1
Dim ptApp As Object
Dim ptPres As Object
Dim ppSlide As Object
Dim totalCols As Integer
slideNo = 1
Set ptApp = CreateObject("PowerPoint.Application")
Set ptPres = ptApp.Presentations.Add
Set ptSlide = ptPres.Slides.Add(Index:=slideNo, Layout:=4)
totalCols = ActiveSheet.ListObjects("Table 1").ListColumns.Count 'ActiveSheet.Cells(1, Columns.Count).End(xlToLeft).Column
totalCols = totalCols - 1
Set aShape = ptSlide.Shapes.AddTable(1, totalCols)
Set Rng = ActiveSheet.ListObjects("table1").ListRows(1).Range 'ActiveSheet.Range(Cells(1, 1), Cells(1, totalCols))
Rng.Copy
aShape.Table.Cell(1, 1).Shape.Select
ptApp.ActiveWindow.View.Paste