FAQ > 金融建模 > 建模问题 > 其他

Q:函数...编译错误,或者找不到该函数    

  • A:函数报编译错误,一般是由于该函数确实不存在或者是函数使用错误导致。
    1)确认该函数是否存在:正确的函数名一般是加粗黑体,如果不是,则要检查是否函数名写错了。另外,也可在资源管理器进行搜索。

    2)确定报错的函数存在,请排查以下情况:

    A、与第三方交互的函数,即对本地文件或数据库进行操作的函数,如importfile、exportfile、ExcelCopy等函数,调用这些函数时,需用rdo2进行调用。如rdo2 importfile(ftxls(),'','D:\\1.xls',r);如果没有使用rdo 或 rdo2,则会报找不到函数错误;

    B、在函数设置中勾选了“本地执行应用”:如果该函数涉及取数据,如取行情数据或财务数据等,勾选了“本地执行应用”会导致报错“找不到某取数的函数”。



    C、执行的主函数如果是公用函数或者系统函数(该主函数有同名的用户函数),请检查其调用的子函数中,是否有用户函数。
      注意,执行的主函数为公用或系统函数时(该主函数有同名的用户函数),调用的子函数必须是系统或公用函数,如果调用的子函数是用户函数,则会报函数编译错误,找不到该函数的问题。
      用户在使用天软范例的时候,要特别注意,有些范例在参数中带有子函数的函数名(函数体内会调用该子函数),比如多因子范例TSFL_TSMutiFactor_01()中参数FactorArr带有因子(一些函数),如果你执行公用函数TSFL_TSMutiFactor_01的时候,把用户自有因子(自己的函数)添加到FactorArr参数中,将会报函数编译错误的问题。报错如(myfactor是我自己的因子,添加到了factionArr参数中):

      解决方法,用户自己参照TSFL_TSMutiFactor_01建立一个用户函数,或者将公用函数TSFL_TSMutiFactor_01转化为用户函数,再添加自己的因子到FactorArr中,即解决该问题。