1樓:眯住眼串針
公式也很長。。。
>
2樓:匿名使用者
用 vba 吧看著就頭大
sub ss()
dim i, j, l, mg
select case [a16]
case is <= 100: i = 3: j = 0
case is <= 500: i = 4: j = 100
case is <= 1000: i = 5: j = 500
case is <= 5000: i = 6: j = 1000
case is <= 10000: i = 7: j = 5000
case is <= 50000: i = 8: j = 10000
case is <= 100000: i = 9: j = 50000
case is <= 500000: i = 10: j = 100000
case is <= 1000000: i = 11: j = 500000
case is > 1000000: i = 12: j = 1000000
end select
if i = 3 then
[b16] = [a16] * [c4]
else
mg = range(cells(i, 4), cells(4, 4))
[b16] = ([a16] - j) * cells(i + 1, 3) + worksheetfunction.sum(mg)
end if
end sub
excel2003,if命令巢狀層數超出了允許值該怎麼辦
3樓:指兔為馬
我建議的方法。
建一個對應關係表,然後用vlookup在資料表查詢對應關係。
如果對應關係很多,且一直需要用這個轉換關係,就建議儲存好,每次更新對應關係後都儲存好備用。
4樓:釋普定法師
a2公式:
2003版:
=if(iserror(find(a1,"一二三四五六七**")),0,find(a1,"一二三四五六七**"))
2007版:
=iferror(find(a1,"一二三四五六七**"),)或陣列公式:
2003版:
=if(or(a1=text(row(1:9),"[dbnum1]")),match(a1,text(row(1:9),"[dbnum1]"),),0)
2007版:
=iferror(match(a1,text(row(1:9),"[dbnum1]"),),)
按ctrl+shift+回車鍵結束。
5樓:匿名使用者
2007是不受7層限制的,2003你可以這樣解決,把條件的對應的資料輸入到某個區域,比如把它輸入到mn列,在m列輸入一,二……,n列1、2……。然後你在a2輸入=if(a1="","",vlookup(a1,m:n,2,0))
6樓:匿名使用者
用vlookup函式就行了,公式中一對應1,二對就2,三對3,可以自行修改對應的關係,也可以按照大括號中的格式自己增加對應的專案。
對應一到九公式:
=vlookup(a1,,2,)
這個是對應一到二十的公式:
=vlookup(a1,,2,)
如果對應關係較多,建議手工先在一個單元格區域中輸入對就關係,然後用公式引用這個單元格區域,這樣公式比較簡潔:
如,先在g和h列輸入好以上的對應關係,然後公式改為這樣就行了:
=vlookup(a1,g:h,2,)
excel的if函式巢狀超過七層怎麼辦,一共有18個範圍,具體公式如下
7樓:匿名使用者
首先你的公式表述就是錯誤的,0<=f2<340這樣是錯誤的,應該是and(f2>=0,f2<340)
其次,你的公式並不需要18層處理,你前面的只需要一個if完成4.5值的,你用了4個
而根據你的公式來看,完全可以用lookup函式處理。
=lookup(f2,)
在{}中寫{大於等於的那個值,對應的那個值;大於等於的值,對應的值}一個對應值用分號
你自己補充進去就行了。
8樓:匿名使用者
可以自己在vba 環境 用 select case語句 寫個自定義的函式,所有處理都在函式裡做 ,**裡所要做的只有一件事 呼叫自定義的函式 並把數值傳進去 很簡單的哈
前提條件是 你知道怎樣開啟 excel 的vba 環境方法:工具-->巨集-->visual basic 編輯器在左邊的工程資源管理器右鍵 插入-->模組編寫自定義函式
function myfun(number) as doubleif 0 < number < 340 then myfun = 4.5
if 340 <= number < 410 then myfun = 4.5
......
end function
在非f2的**裡寫 =myfun(f2)就ok了
9樓:匿名使用者
不用這麼複雜,找兩列(d、e),把比較的對應關係放進去,假設要判斷的資料在a1,b1是判斷結果的話,那麼b1=lookup(a1,d1:e18)
excel使用if函式巢狀超過七層怎麼辦
10樓:李洪均
excel2007及以上版本支援更多層巢狀
11樓:匿名使用者
............................................
在ecel中如何能對if函式計算的結果進行求和
b5單元格插入函式sumif range 條件判斷的單元格區域為a2 a4 criteria 判定條件 為 8 sumrange 求和單元格區域 為 b2 b4 確定,結果為2.這是因為你的條件函式使用不當,得出的結果為文字,所以不能正確求和,請將條件公式改為 if a2 8,0,1 這樣就可以用公...
在ecel怎樣用ecel函式公式計算時間差
嘿嘿vb的函式不適用,還是這樣 1.設定日期格式選擇a,b兩列 格式 單元格 數字,分類中選 時間 型別中選 1 30pm 確定。2。輸入 b1 a1,回車,下拉。時間在excel中,是作為小數儲存的,可以直接計算。這個小數,是按照每天86400秒計算的。如果因為超過1天出錯,就加上日期。日期在ex...
ecel函式中sumif函式的使用方法
sumif函式語法是 sumif range,criteria,sum range sumif函式的引數如下 第一個引數 range為條件區域,用於條件判斷的單元格區域。第二個引數 criteria是求和條件,由數字 邏輯表示式等組成的判定條件。第三個引數 sum range 為實際求和區域,需要求...