a1為下拉式清單,顯示內容為:無條件進位,四捨五入,無條件捨去
選取:
無條件捨去參數為ROUNDDOWN
四捨五入參數為ROUND
無條件捨去參數為ROUNDUP
b2的計算式
=IF(B3=0,0,IF(****(A3*1000*B3*D$1%*F$1%,0)<20,20,****(A3*1000*B3*D$1%*F$1%,0))
****<<代表選取了條件後的參數
比方我下拉選了無條件捨去
b2計算式就會變成
=IF(B3=0,0,IF(ROUNDDOWN(A3*1000*B3*D$1%*F$1%,0)<20,20,ROUNDDOWN(A3*1000*B3*D$1%*F$1%,0))
以此類推
請問各位先進
這樣如何設計?
謝謝
可能我形容的不夠好
在下意思是
a1下拉清單有這三樣
無條件捨去參數為ROUNDDOWN
四捨五入參數為ROUND
無條件捨去參數為ROUNDUP
而b2的計算式
=IF(B3=0,0,IF(****(A3*1000*B3*D$1%*F$1%,0)<20,20,****(A3*1000*B3*D$1%*F$1%,0))
****代表選取了下拉清單的條件後,****會變為所選的條件參數
比方我下拉選了無條件捨去
b2計算式就會變成
=IF(B3=0,0,IF(ROUNDDOWN(A3*1000*B3*D$1%*F$1%,0)<20,20,ROUNDDOWN(A3*1000*B3*D$1%*F$1%,0))
下拉選了四捨五入
b2計算式就會變成
=IF(B3=0,0,IF(ROUND(A3*1000*B3*D$1%*F$1%,0)<20,20,ROUND(A3*1000*B3*D$1%*F$1%,0))
下拉選了無條件捨去
b2計算式就會變成
=IF(B3=0,0,IF(ROUNDUP(A3*1000*B3*D$1%*F$1%,0)<20,20,ROUNDUP(A3*1000*B3*D$1%*F$1%,0))
謝謝大大
'程式碼放在工作表1
'依a1下拉式選單的值,在c1產生公式,計算b1數值的進位
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Range("a1"), Range(Target.Address)) Is Nothing Then
Dim f As String
If Target.Value = "四捨五入" Then f = "ROUND"
If Target.Value = "無條件捨去" Then f = "ROUNDDOWN"
If Target.Value = "無條件進位" Then f = "ROUNDUP"
'以下這行,請自行依需求更改公式
Range("c1").Formula = "=" & f & "($B$1,0)"
End If
End Sub
內文搜尋

X