我有一张工作表,我正在使用宏来创建图表。由于数据分散在工作簿中的各种工作表中,我正在复制它并创建一组连续的列来用于创建图形:
Sheets("Data1").Range("A29:A39").Copy Destination:=Sheets("Chart").Range("AA29:AA39")
Sheets("Data2").Range("D29:D39").Copy Destination:=Sheets("Chart").Range("AB29:AB39")
Sheets("Data3").Range("I29:I39").Copy Destination:=Sheets("Chart").Range("ACI29:AC39")
Sheets("Data3").Range("D129:D139").Copy Destination:=Sheets("Chart").Range("AD29:AD39")
我的数据如下:
CustomerA 489 456 93%
CustomerB 63 0 0%
CustomerC 123 123 100%
CustomerD 185 172 93%
以上是我希望在新复制的单元格中获得的值,而不是使用公式计算它们的方式。我正在使用上述vba来完成这项工作。
如何获取绝对值,而不是新复制的工作表单元格中的相对公式?
答案 0 :(得分:3)
像这样使用Value
Sheets("Chart").Range("AA29:AA39").Value = Sheets("Data1").Range("A29:A39").Value
更新:如果要将数据转储到已格式化为数字和百分比的单元格中,则此过程比复制和粘贴更清晰。如果您确实需要这些格式,那么您可以将粘贴特殊formtas与上面的行组合或将我们的两个代码组合到
将值从Data1转储到Chart1,替换步骤1中的公式
Sheets("Data1").Range("A29:A39").Copy Destination:=Sheets("Chart").Range("AA29:AA39")
Sheets("Chart").Range("AA29:AA39").Value = Sheets("Data1").Range("A29:A39").Value