0
如果有人幫助解決這個問題,我將不勝感激。在excel下面有一個用戶定義函數的簡短代碼。
我在命名列(在一個大的電子表格中)來計算SUMIFS
的計算。如果我想在另一個用戶自定義函數中使用相同的列命名並使用變量WRITEOFF1
和WRITEOFF
「,我該怎麼做?我已經嘗試在子例程中設置列的名稱(在同一個VBA項目和模塊中)然後試圖調用子程序,但看起來像我不能名字傳遞到另一個功能。調用用戶定義函數中的子例程和值(Excel)
有人可以用一個解決方案幫助?在此先
非常感謝。
Public Function WRITEOFF(rev_date As Variant) As Variant
Application.Volatile (True)
Set Order_Type = Sheets("KRONOS").Range("$D:$D")
Set Final_Price = Sheets("KRONOS").Range("$H:$H")
Set PaidAlt = Sheets("KRONOS").Range("$I:$I")
Set Excl_Rev = Sheets("KRONOS").Range("$K:$K")
Set PAmount1 = Sheets("KRONOS").Range("$O:$O")
Set First_PD = Sheets("KRONOS").Range("$Q:$Q")
Set PMethod1 = Sheets("KRONOS").Range("$R:$R")
Set PAmount2 = Sheets("KRONOS").Range("$T:$T")
Set PayDate2 = Sheets("KRONOS").Range("$V:$V")
Set PMethod2 = Sheets("KRONOS").Range("$W:$W")
Set PAmount3 = Sheets("KRONOS").Range("$Y:$Y")
Set PayDate3 = Sheets("KRONOS").Range("$AA:$AA")
Set PMethod3 = Sheets("KRONOS").Range("$AB:$AB")
Set PAmount4 = Sheets("KRONOS").Range("$AD:$AD")
Set PayDate4 = Sheets("KRONOS").Range("$AF:$AF")
Set PMethod4 = Sheets("KRONOS").Range("$AG:$AG")
Set Vstatus = Sheets("KRONOS").Range("$DL:$DL")
Set Team = Sheets("KRONOS").Range("$DO:$DO")
WRITEOFF1 = Application.WorksheetFunction.SumIfs(_
PAmount1 _
, Team, "<>9" _
, Vstatus, "<>rejected", Vstatus, "<>unverified" _
, First_PD, rev_date _
, PMethod1, "Write Off")
WRITEOFF2 = Application.WorksheetFunction.SumIfs(_
PAmount2 _
, Team, "<>9" _
, Vstatus, "<>rejected", Vstatus, "<>unverified" _
, PayDate2, rev_date _
, PMethod2, "Write Off")
WRITEOFF3 = Application.WorksheetFunction.SumIfs(_
PAmount3 _
, Team, "<>9" _
, Vstatus, "<>rejected", Vstatus, "<>unverified" _
, PayDate3, rev_date _
, PMethod3, "Write Off")
WRITEOFF4 = Application.WorksheetFunction.SumIfs(_
PAmount4 _
, Team, "<>9" _
, Vstatus, "<>rejected", Vstatus, "<>unverified" _
, PayDate4, rev_date _
, PMethod4, "Write Off")
WRITEOFF = WRITEOFF1 + WRITEOFF2 + WRITEOFF3 + WRITEOFF4
End Function
當您嘗試運行這個會發生什麼?你是否收到錯誤信息? – Justin
嗨Jmax,該函數的工作原理,我想在這個函數中使用範圍名稱和WRITEOFF1和WRITEOFF2在另一個函數中的值。我不打算重新輸入所有代碼,而是查看是否可以記住範圍名稱和兩個值。那可能嗎? – Fred
不完全明白你在找什麼。你想將命名的範圍名稱傳遞給另一個UDF?爲什麼不只是將名稱作爲參數添加並在輸入公式時輸入它?那是你在找什麼? – Jon49