誰かがおそらく単純な解決策で助けてくれたら、私は感謝します。以下は、User Defined Functionのための短いコードが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の値を使用します。すべてのコードを再入力するのではなく、範囲名と2つの値を呼び出すことができるかどうかを調べることになります。それは可能ですか? – Fred
あなたが探しているものをあまり理解していません。名前の範囲名を別のUDFに渡したいですか?なぜ名前をパラメータとして追加して、式を入力するときに名前を入力するだけですか?それはあなたが探しているものですか? – Jon49