我在EXCEL里面运行下面的CODE,matlab也自动运行了,结果我也可以在MATLAB里面看到,但是不能从matlab里面导出到EXCEL,好像是最后一条命令没有用,有大神可以帮我看一下吗?需要的话可以提供MATLAB的code
Sub zjlx()
Dim code_str As String
Dim class_para%
Dim date_para As Date
Dim mlpath As String
Dim commdpath As String
Dim d(1 To 8, 1 To 1000)
code_str = Range("BM")
class_para = Range("class")
mlpath = ThisWorkbook.Path
mlopen
commdpath = "cd('" & mlpath & "')"
mlputvar "ml_path", mlpath
mlevalstring "commdpath"
mlevalstring "cd(ml_path)"
mlputvar "bench", code_str
mlputvar "sector_num", class_para
mlevalstring "[a b c]=zjlx(bench,sector_num);"
MLGetVar "a", d
Debug.Print d(1, 1)
End Sub
Sub zjlx()
Dim code_str As String
Dim class_para%
Dim date_para As Date
Dim mlpath As String
Dim commdpath As String
Dim d(1 To 8, 1 To 1000)
code_str = Range("BM")
class_para = Range("class")
mlpath = ThisWorkbook.Path
mlopen
commdpath = "cd('" & mlpath & "')"
mlputvar "ml_path", mlpath
mlevalstring "commdpath"
mlevalstring "cd(ml_path)"
mlputvar "bench", code_str
mlputvar "sector_num", class_para
mlevalstring "[a b c]=zjlx(bench,sector_num);"
MLGetVar "a", d
Debug.Print d(1, 1)
End Sub
也不要做用A语言代码直接调用B语言代码库这样复杂、这样容易出错的傻事。
只需让A、B语言代码的输入输出重定向到文本文件,或修改A、B语言代码让其通过文本文件输入输出。
即可很方便地让A、B两种语言之间协调工作。