質問

私はこの分野とVBでもまったく新しいです。私のスクリプトの1つの現在のパフォーマンスは本当に悪いです。プロファイルする方法がわかりません。したがって、私は「Shift+F8」を使用して「ステップオーバー」を1つずつ使用して、凍結した場所を確認します。その後、次の2つの指示であることが判明しました。

//This compare instruction
If mail.SentOn < eCase.firstAppearance Then
  eCase.firstAppearance = mail.SentOn
End If

//And this assignment instruction in another place
eCase.firstAppearance = mail.SentOn

伝説:「Mail」は「MailItem」と「Ecase」のインスタンスであり、次のメンバーがいる公開クラスのインスタンスです。

Public firstAppearance As Date

私見、コピーの構築を避けるために、「date_pointer」または「date_ref」に「日付」を置き換える必要があるかもしれません。それらが可能かどうかはわかりません。その比較命令のパフォーマンスを改善する方法についても、私も考えていません。

また、それをプロファイルする正しい方法が何であるかを知る必要があります。まったく無関係な場所を見ている場合に備えて。

役に立ちましたか?

解決

最後に、clng(expr)を使用して「日付」を「長い」に変換し、その値と比較することを選択しました。まだ遅いですが、それほど遅くはありません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top