2014-12-03 63 views
0

嵌套的IF函數不工作

嗨,我想輸入的功能在C2以分配一個數值在B列中給出的分鐘這種情況的標準可以在可見上面的圖像(從G1開始)。

我已經使用式I從一個類似的情況複製嘗試,但不工作:

= IF(B2 < = $ A $ 2,5,IF(B2 < = $ A $ 3,4,IF( B2 < = $ A $ 4,3,IF(B2 < = $ A $ 5,2,1))))

任何幫助,將理解的是,得益於

+0

如果要保留* X min *格式,請選擇單元格並點擊Ctrl + 1。在*號碼*選項卡上,從列表中選擇*自定義*,併爲*類型:*提供* 0「min」*或* 0 \ m \ i \ n *。這將允許您將整數放入單元格中進行計算,同時保留您的首選格式。例如* 150分鐘* – Jeeped 2014-12-03 11:47:31

回答

1

的建議通過上述@Jeeped將簡化所需的公式。如果必須保留上面列出的'A'和'B'單元格,則必須從'x min'格式中提取數字,並將'x'轉換爲數字以便進行比較(我假設數字後面有一個「」,可以搜索「min」)。

=VALUE(LEFT(A2,SEARCH(" ",A2)-1)) 

使用上述,如果A2 = '60分鐘',公式將產生'60'。

既然可以將單元格內容視爲數字,則可以進行比較。 C2的公式:

=IF(VALUE(LEFT(B2,SEARCH(" ",B2)-1))<=VALUE(LEFT($A$2,SEARCH(" ",$A$2)-1)),5, 
IF(VALUE(LEFT(B2,SEARCH(" ",B2)-1))<=VALUE(LEFT($A$3,SEARCH(" ",$A$3)-1)),4, 
IF(VALUE(LEFT(B2,SEARCH(" ",B2)-1))<=VALUE(LEFT($A$4,SEARCH(" ",$A$4)-1)),3, 
IF(VALUE(LEFT(B2,SEARCH(" ",B2)-1))<=VALUE(LEFT($A$5,SEARCH(" ",$A$5)-1)),2,1)))) 

這是醜陋的,但作品給出了原始問題。

+0

太好了,非常感謝!它的工作原理:D – PAO3092 2014-12-04 00:45:51

0

嘗試這種式(在此情況下爲C2) :

=SUM((B2<=$A$2:$A$5)*1)+1 

將它用作數組公式很重要。因此,在將此公式輸入或插入到單元格後,不要僅使用Return進行提交,而是需要按Ctrl + Shift + Return。如果你這樣做是正確的,你的公式將被大括號式酒吧包圍:

{=SUM((B2<=$A$2:$A$5)*1)+1} 
+0

根據「得分應該是多少」似乎不能達到75分鐘。 – pnuts 2014-12-03 12:34:55

+1

我不知道'應該是'的價值來自何處。他們對我的公式所指的語言化條件(G列)不甚明顯。 – Fratyx 2014-12-03 12:39:01

+0

這些是我手動輸入的分數,錯誤分數左邊的分數是我從我使用的公式得到的分數,但是不正確。我把'分數應該是什麼'作爲參考。 – PAO3092 2014-12-03 21:22:28