2011-12-08 77 views
1

我有一个工作表,我正在使用一个宏来创建一个图表。由于数据是工作簿中的分散在不同的工作表,我复制相同,创建一组连续的列用于创建图表:复制一个Excel工作表单元格的绝对值(而不是公式)

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% 

以上是我希望在新复制的单元格中获得的值,而不是如何使用公式计算它们。我正在使用上面的进行这项工作。

如何获取绝对值,而不是我新复制的工作表单元格中的相对公式?

回答

3

使用Value这样

Sheets("Chart").Range("AA29:AA39").Value = Sheets("Data1").Range("A29:A39").Value 

更新:如果你正在倾倒的数据转换成已经格式化为数字和百分比细胞,然后这个过程比复制和粘贴清洁。如果你需要的格式,那么你既可以结合一个特殊粘贴formtas与上面的线或我们两个代码相结合,

  • 获得单元格格式数据1之间,张玉峰和图表
  • 从数据1倾倒值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 
    
+1

+1这是最好的答案:)需要明确的是,他是在说使用.value的= .value的,而不是复制和粘贴。 – aevanko

+0

@issun是的,我有点简洁:) – brettdj

相关问题