質問: excelvba evaluateについて 度々お世話になります。 const+evaluateの使い方ついてお教えください。 vba内で「randbetween」を使いたくて long型の変数valに対し constした「数」(10)を使い val=evaluate("randbetween(1,数)") とか val=[randbetween(1,数)] とかしたら 「型が合わない」と、お叱りを受けました。 そこで ウオッチに登録すると エラー 2029 となっていました。 一方で application.worksheetfunction.ceiling(1 数) は、問題ありません。 マイクロソフトサポートによると ( http://support.microsoft.com/kb/823604/ja ) 「イミディ エイト ウィンドウ、visual basic エディターで、次のコマンドを入力し、enter キーを押しますと、この問題が発生可能性があります application.evaluate("=sum(xyz(),apple)")」 とのことなのですが、 これ、 セルを使わない回避の技、ありますか? どうぞ宜しくお願い致します。
回答: これで良いのでは? val = evaluate("randbetween(1," & 数 & ")")