我试图复制一个列的权利表和粘贴公式只(不值)。
Sub acrescentaCols()
Dim oSheet As Worksheet
Set oSheet = Sheets("Sheet1")
oSheet.Columns("D:D").Select
Selection.Copy
Range(Selection, Selection.End(xlToRight)).Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
End Sub
但这也是复制值(因为Excel也将值视为公式)。
我该怎么解决?
4条答案
按热度按时间np8igboo1#
下面应该解决你的直接问题,只复制公式,而不是值,但我不知道你到底想做什么。如果你能给予更多的信息,我相信我能帮助你达到你想要的目的。
看起来好像你想把公式复制到工作表最右边D列右边的每一行。
看起来您似乎只想复制公式,以便它们在新位置重新求值-或者您只想粘贴值,以便它们保持与列D中的求值值相同的值?
不管怎样,给予这个。
gdrx4gfi2#
正如我之前的评论:
u0sqgete3#
当您说仅粘贴公式时-您的方法将粘贴公式,然后重新计算,您的公式将显示结果。我觉得更好的写法应该是:
如果你想显示实际的公式,你可以使用一个UDF,比如:
如果你想把它应用到整个列,你可以用途:
这可能会杀死你的电子表格,虽然-它将执行所有行的UDF。
kgsdhlau4#