2017-08-28 61 views
1

我一直在Excel中嘗試幾個公式,並且遇到了多個公式的問題。我輸入了一個可以工作的公式,但excel顯示錯誤的結果。如果我點擊功能按鈕查看參數 - 對話框顯示正確的值!Excel 2016顯示錯誤的公式結果,但Functon參數對話框顯示正確的結果

例如,如果單元格A1 =「DE1」和A2具有=MIN(FIND(ROW($1:$10)-{1},A1&56^7)) Excel有單元格A2 7,但如果我編輯功能我看到的2.

適當值我的最終目標是要使用公式刪除單元格中的所有數字(我不想使用VBA代碼)我在網上看到了一些示例,但都顯示與上例相同的症狀。

回答

1

的公式:

=MIN(FIND(ROW($1:$10)-{1},A1&56^7)) 

是一個數組公式,其中,回答你的問題,需要與確認按Ctrl-Shift鍵輸入,而不是退出編輯模式時輸入。如果做得正確,Excel將在公式周圍放置{}

enter image description here


什麼公式是這樣做的:

A1&56^7 

創建一個文本字符串A1的價值和1727094849536這是56^7這也就是擁有所有從數字的數0-9在它。這使FIND不會返回錯誤。以該順序{0,1,2,3,4,5,6,7,8,9}

ROW($1:$10)-{1} 

返回的所有個位數的陣列。

注意:圍繞一個的{}不是必需的,它在此實例中不做任何事情,可以省略。 ROW($1:$10)-1

Find then in Array form將返回每個數字的第一個字符位置的數組。因此,在A1&56^7DE11727094849536的情況下,該陣列將爲:{8,3,6,15,10,14,16,5,11,9}

由此MIN將返回3

如果沒有Ctrl-Shift-Enter,FIND將不會遍歷整個數組,並且只返回第一個或8,而一個數字的MIN是該數字。

+0

謝謝。就是這樣。 – LtlBear

+0

@Scott Craner,真棒爆炸 –

+0

我的意思是提前詢問,但在工作中被打斷。這是所有數字的56^7技巧,但一個已知的程序員快捷表達式的所有數字都短於1234567890? –