我在Excel上有一个表,根据应用的过滤器,它的大小不同(行数;列数始终相同)。
该表位于名为“零售商”的工作表的B2:F7范围内。
我想编写一个VBA脚本,将该表复制到名为“Stores”的现有Powerpoint演示文稿的幻灯片35中。但是,由于表的大小不同,我希望在每次运行代码时,只复制那些具有值的行。
我试过这样做:
Sub Copy Table ()
'Copy Range from Excel
Set rng = ThisWorkbook.Sheets("Retailers").Range("B2:F7")
'Copy Excel Range
rng.Copy
'Paste to PowerPoint and position
我不确定如何将其粘贴到Powerpoint,也不确定只复制带有数据的行。
我怎么能这样做?
答案 0 :(得分:0)
Sub t()
Dim copy_range As Range, paste_range As Range
With Sheets("Sheet1")
Set copy_range = .Range("A1:A" & .Range("A" & .Rows.Count).End(xlUp).Row)
End With
Set paste_range = Sheets("Sheet2").Range("A5")
copy_range.Copy paste_range
End Sub
答案 1 :(得分:0)
所以问题是,如何选择非空白细胞? 您可以使用动态范围选择 - 使用End属性甚至更容易使用CurrentRegion属性。它的工作方式类似于普通Excel视图中的ctrl + shift +箭头快捷方式。