Excel中的EXCEL公式

问题描述:

我希望能够在“主表”中输入公式。调用该公式时,将在调用公式的工作表上执行。Excel中的EXCEL公式

实施例:

Sheet 1 (master sheet) 
Col A Col B 
ABC  A1 
DEF  A2xA2 
GHI  A3-A1 * .05 
JKL  A4+A1 

Sheet 2 
Col A Col B  Col C 
5  DEF  
10  ABC 
15  GHI 
20  JKL 

因此,我希望发生的是任何我键入到色柱B Sheet 2上,以执行相对于上表1(主片)式到相应的列上表2因此,在上面的例子中,Col 2的Sheet 2的第1行将是25.我正在尝试VLOOKUPINDIRECT的混合。如果它只是单元格引用(例如Sheet1上的ABC),它就可以正常工作。如果我输入其他任何一个,它就会炸毁。由于VLOOKUP工作正常,有什么可以“执行”公式或评估公式?或者当不仅仅是一个直接的单元格引用时,如何获得间接工作。

我对VBA解决方案不感兴趣,我想使用直线excel功能。

+0

'INDIRECT'函数使用'Cell Reference'而不是算术函数。检查[this](https://support.office.com/en-us/article/INDIRECT-function-474b3a3a-8a26-4f44-b491-92b6306fa261) –

这是很容易使用VBA,因为你可以调用Excel的评估功能的模块,它是不可用的,从工作表中创建一个UDF:

Function Eval(ByVal r As Range) 
    Application.Volatile True 
    Eval = Evaluate(r.Value) 
End Function 

然后,如果你有SUM($ A $ 1:$ A $ 10 )作为例如电池C1的文本,在所有你需要做不同的细胞执行该文本作为公式输入:

=Eval(C1) 

如果你真的必须避免VBA的评估定义名称时功能可用。因此,具有SUM($ A $ 1:$ A $ 10)上面的例子中C1可以定义一个名为SumCol新名称指的是以下几点:

=Evaluate($C$1) 

然后你就可以把SumCol到单元格:

=SumCol 

但我想像这样定义一堆名字会变得单调乏味。

+0

真棒回答! –