2013-06-25 190 views
-1

我最初在SSRS论坛上发布了一些类似于此的内容,但由于SSRS的限制无法完成,所以它不会出现,因此我将从不同角度尝试。Excel根据公式进行评估

我有2个Excel文档,名为“Prop1”和“Prop2”。在Prop2中有一张名为“Data”的表格,这是一个导出的SSRS报告,在DF列中有很多功能,这些功能看起来像这样沿着表单运行,但不会出现在每一行上。 Cell DD3包含从报告中导出的编号,例如我们将说79.

我将从Prop2中拖动数据并将工作表放入到Prop1中,然后能够运行一个宏以评估所有单元现在在Prop1中的数据表以及看起来像公式=(DD3*的任何数据表都将其评估为正确的Excel函数,以便在更改DD3中的值时更改计算结果。

不幸的是,这份文件将给予一些对Excel几乎不了解的人的选择,因此我需要尽可能地自动执行此操作。我试图用代码: -

Sub test() 
    Dim cell As Range 

    For Each cell In ActiveWindow.RangeSelection 
     cell.Value = Evaluate(cell.Formula) 
    Next cell 
End Sub 

但不知道如何来定制它做什么,我都试图解释。

任何人都可以帮助,因为我真的没有其他选择,使所有这些工作。

对不起,我有一些单元格引用到D33和一些到DD3他们应该都是DD3,我已经相应地改变了问题。

+0

'=($ DD $ 3 * 5)'啊? – 2013-06-25 11:58:45

+0

不确定你的意思是什么? – PJD

+0

不知道你在问什么,它的不清楚,因为没有人帮助你,但 – 2013-06-25 12:52:08

回答

0

不是很确定,但在公式把'时,你可以改变cell.Value = Evaluate(cell.Formula)

cell.Formula = cell.Value

我已经尝试过了

+0

嗨matzone,不知道如果我已经正确理解了你的建议,你问是否可以将导出的值设置为Evaluate(cell.Formula)如果不幸这种情况不是这样,一旦导出这个值就只剩下文本,我又回到了评估它第二次,假设我正确理解你! – PJD

+0

@PJD ..试过这样.. A1 = 1 .. B1 = 2 .. C1 ='= A1 + B1 ..然后我选择C1 ..继续执行代码..所以C1会是3 .. – matzone

+0

您好matzone感谢您的帮助,我在Excel中的输出看起来像您C1的输出,但只有公式显示为它只是显示为文本,我需要让Excel自动实现,我们所说的任何东西都有D33 *细胞真的是一个优秀的公式,需要像这样对待。 – PJD