【发布时间】:2019-08-15 04:50:17
【问题描述】:
我有一些代码通过将公式放入某些表格单元格中来更新另一个下载报告中的库存表,但我需要在更新后将它们更改为值而不是公式。
我只需要复制整个列(这需要是可变数量的单元格),然后将其粘贴回同一个位置,但作为值。 (类似于手动复制、粘贴,然后再次执行 ctrl+v 以粘贴为值)
只要单元格成为值,我愿意接受任何解决方案。
我尝试了使用 PasteSpecial 的标准 ListObjects 范围复制代码,但是当它到达粘贴行时,我收到错误 438,“对象不支持此属性或方法”。根据我所做的研究,我无法弄清楚我还有哪些其他选择。
'''This is the formula going into the cells
ActiveCell.Formula = "=IF(ISERROR(GETPIVOTDATA(""Sec QTY Sum"", '[8-14-19 AM INVENTORY.xls]Sheet2'!$A$4,""Alias"",""" & y & """)),0,GETPIVOTDATA(""Sec QTY Sum"", '[8-14-19 AM INVENTORY.xls]Sheet2'!$A$4,""Alias"",""" & y & """))"
'''The second line of this code is where it messes up with the error 438
ActiveSheet.ListObjects("Table62").ListColumns(5).Range.Copy
ActiveSheet.ListObjects("Table62").ListColumns(5).PasteSpecial Paste:=xlPasteValues
尝试获取值,以使电子表格不依赖于打开/未更改的另一个电子表格。收到错误消息 438
【问题讨论】: