2016-03-02 29 views
1

我正在處理的情況要求我根據列C上相應的行值對列W應用六個不同公式中的一個。對Excel中的長公式使用IF函數有什麼替代方法?

例如,如果單元格C5表示「A 」我的上W5式必須是

=(SUMIFS(K:K,A:A,A5,F:F,F5)*8). 

然後,如果C6 = 「B」,W5

=SUMIFS(L:L,A:A,A6,F:F,F6), etc. 

正如我所提到的,我有這些公式6,它們比上述的方式再在這裏我只是將它們作爲一個例子來說明,所以這很麻煩ITE所有公式在IF格式即

=IF(C5="A", *bigassformula1*,if(c5=B, *bigassformula2*...)))... 

有沒有辦法以不同的方式做到這一點,無論是通過公式或VBA?

+2

我會說你想在單個單元中做太多。可能有6列,顯示* bigassformula1 *,* bigassformula2 * ....然後最後第7列說「= IF(C5 =」A「,G5,如果(C5 =」B「,H5 ...」 。 –

+0

公式通常可以相對於C5等A,B,C,D,E等條件而制定。但是,由於您決定保留實際的* bigassformulas *爲祕密,因此它不會產生太多意義在於爲修補程序提供修復 – Jeeped

+0

如果公式總是與已知參數相同,您可以隨時在VBA中重新實現此功能。爲您節省大量工作量,使調試公式成爲可能,並且如果您需要對將來的任何公式進行修改,你只需要在一個地方完成它們。 – johankr

回答

0

一兩件事你可以做的是建立方程的一個表,並看看他們基於像這樣的值:

=VLOOKUP(G7,EquationLookups,2,FALSE) 

Image1

Image2

你會希望把價值您正在第一列中搜索,並在第二列中查找您想要使用的公式。

相關問題