私は新しくvba for fomulasのコーディングについての私の問題を助けてください。 = IFERROR(AP24728 < 0、(B24728、AQ24728、 'N:#Abe \レポートPU 05 Des 2016.xlsx休日'!$ A $ 2:$ A $ 69)) - 1)Excel式をvbaで使用する方法
ありがとうございました
私は新しくvba for fomulasのコーディングについての私の問題を助けてください。 = IFERROR(AP24728 < 0、(B24728、AQ24728、 'N:#Abe \レポートPU 05 Des 2016.xlsx休日'!$ A $ 2:$ A $ 69)) - 1)Excel式をvbaで使用する方法
ありがとうございました
VBAでExcel式を使用するには、Evaluate
@ YowE3Kの例のようにファンクション文字列を使用するか、WorksheetFunction
メソッドを使用してほとんどのExcel関数を実行できます。 Evaluate
メソッドは、あなたの例が示唆しているような固定式を行い、VBAで結果を返す場合に最も適しています。WorksheetFunction
メソッドでは、VB言語で引数を指定できます(私の意見では、しかし、あなたがこれを何度もやりたいと思うならば、速度の面ではトレードオフがあります。例えば、ある範囲のセルを繰り返し処理するなど)。IfError
に別の関数が組み込まれているので、巣IfError
1内の別のWorksheetFunction
、以下のように:
WorksheetFunction.IfError([expression], WorksheetFunction.NetworkDays([date from], [date to], [holidays]))
しかし、あなたが何をしたいあなたのポストから明らかではありません。ここで重要なことは、全体として何をしようとしているのか、つまり達成しようとしている「大きな写真」は何かについて、さらに詳しい情報を提供することです。 1つのセルで値をテストしたいだけですか?これは、複数の細胞に対して繰り返す必要があるものでしょうか? VBAでなぜこれを行う必要がありますか?ワークシートの数式をはるかに簡単に使用できるのはなぜですか?
「あなたは何をしようとしていますか? 「私はVBAには、この式を載せていきたいと思います」と、いくつかのサンプルコードは次のようになります。
Dim result As Variant
result = Evaluate("IFERROR(AP24728<0,(NETWORKDAYS(B24728,AQ24728,'N:#Abe\Report PU\Desember[Report PU 05 Des 2016.xlsx]Holidays'!$A$2:$A$69))-1)")
、あなたの質問に追加の詳細を提供する場合、私はこの答えに展開することができ、または他の誰かがはるかに思い付くこともっといい方法。
詳細をお知らせください。現在あなたの質問には、VBAに関する問題があり、Excelの式が表示されます。あなたは何をしようとしているのですか?何が効いていないのですか? – YowE3K
私はこの式をVBAに入れたいと思います。 ありがとう – LhSandi