2012-09-21 43 views
0

返回如何返回其它細胞(列L)的公式,如果在列A 實施例選擇項: 如果答案,則返回= I5 &「」 & J5 如果foo的,則返回「 = I7 & 「」 & J7 & 「」 & K7 & 「×」 & L7Excel中:式從有條件

我希望返回式代替結果。 enter image description here

+1

這讓我感到困惑。你想在哪裏出現結果 - 輸入值是多少? –

+0

輸入值是列A,B,C和D.輸出是列E從公式L. –

回答

1

把這個功能的公共模塊

Function GetFormula(rng As Range) As Variant 
    GetFormula = rng.Formula 
End Function 

在我認爲這是你想要的。有幾種方法可以讓您選擇返回公式,例如R1C1風格。

編輯

哦,我想我得到你想要的更多。好的,將你在藍色表格中的公式應用到F列所需的任何單元中,你可以調用Indirect函數。

因此,例如,如果您想將公式'=I7 & " " & J7 & " " & K7 & " x " & L7應用於列F,則請致電=INDIRECT(I7 & " " & J7 & " " & K7 & " x " & L7)。在您的列I中不包含=標誌。它會使它更容易一些。

您可以使用Vlookup通過在參考表(藍色表格)的列A中使用查找項目來查找應該應用的位置。返回列I中的公式。

+0

我試了一下,謝謝。 –

0

你可以通過嵌套你的公式來實現這一點。

把這個E5

=IF(A5 = "answer", A5 & " " & B5 & " " & D5, 
IF(A5 = "bar", A5 & " " & B5 & " " & C5, 
IF(A5 = "foo", A5 & " " & B5, 
"No If Formula Here yet"))) 

我開始公式了與前兩種格式的爲您服務。

+0

瘸子我的例子是短的,但現實我的選擇是更多的40 diferents itens和ai? –

+0

它看起來像你的一些fomrulas是相同的,所以我建議將它們分組,以便你可以使用如下行:IF(OR(A5 =「stick,A5 =」send「,A5 =」cat「),A5 &「」&B5&「」&C5,「nothing」)' 實際情況是,如果您需要處理40個不同的wats來檢查和組合列,則需要在某處編寫該代碼。但是,我建議爲了便於閱讀,你可以在VBA中創建一個UDF,這種方法比較複雜,但是更容易更新和評論(文檔) – danielpiestrak