转贴:复制粘贴数据而不是公式excel VBA
好的,我必须重新发布这个,因为我的原始线程被标记为“原始”线程与我的问题没有任何关系的副本,并将其标记为副本的人无法提供答案。
有一个原因,为什么我在我的代码中使用activecell,因为它与outlook的交互和其他单元格的某些条件的validation。
ActiveCell.Cells(1, 37).Copy Destination:=wsTest.Range("A" & Rows.Count).End(xlUp).Offset(1)
现在我试过了:
ActiveCell.Cells(1, 37).Copy Destination:=wsTest.Range("A" & Rows.Count).End(xlUp).Offset(1).pastespecial
但我得到错误1004。
如果有人在这里指出我: 如何在Excel中只粘贴值
请告诉我4个答案中的哪一个会真正起作用,因为他们中没有一个正在为我的目的而工作。
反转过程直接传递值。
wsTest.Range("A" & Rows.Count).End(xlUp).Offset(1) = ActiveCell.Cells(1, 37).value
.Value
是单元格中的原始基础值或单元格中包含公式的结果。 .Value2
将2015年2月18日之后的价值进一步剥离为42,053 。 如果您在单元格中使用了数字格式(例如2015年2月18日),并希望保留它,请使用.Text
代替.Value
。