• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excelマクロで定義の関数実行結果が#VALUE)

Excelマクロで定義の関数実行結果が#VALUE

このQ&Aのポイント
  • Excelマクロで定義の関数実行結果が「#VALUE」になってしまう問題について質問します。
  • 複素数を扱う関数をコピペしたが計算結果が「#VALUE」になってしまう理由を教えてください。
  • IMMULT関数定義部分に絞ってもエラーになる理由を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.1

いろいろ試させていただきました。 Windows10(64bit) Excel2013 = IMMULT ⇒ #VALUE Windows7(32bit) Excel2013 = IMMULT ⇒ #VALUE Windows7(32bit) Excel2002 添付ファイルの結果になりました。 もちろんExcelのバージョンに合わせて atpvbaen.xlam ⇒ atpvbaen.xla に訂正しております。

alps4
質問者

お礼

watabe007さま,早々にご回答ありがとうございました. 頂いた情報から,これはマクロの記述が古いのかもしれないとExcel2016の入門書を購入し,構文をチェックしてみました. 誤り:IMPRODUCTa = Application.Run("atpvbaen.xla!IMPRODUCT", a) の様な事例はなく,ここの部分を 正解:IMPRODUCTa = Application.WorksheetFunction.ImProduct(a) に変更してみたところ,ちゃんと動きました. 関数定義のマクロ本文ではなく前文が古い記載だったようです. 今回求めたい配列が15×17と大きいため手計算ではとても計算できないところでした.これで前に進めます.watabe007さまには前々から回答頂いてて,ホントにありがとうございます!!助かりました!!

関連するQ&A