Re: [其他] Excel可以读取matlab 计算式吗?

楼主: charleshu (开始学剧本的即兴剧演员)   2020-12-27 14:57:30
※ 引述《qaz1234567q (斐波那契数列)》之铭言:
: 我知道matlab可以输入或输出excel。
: 但是,我想问的是excel可以读取matlab吗?
: 因为,在Excel写计算式或程式都没有matlab来的方便。可是,matlab在一些操作上又没
: 有excel来的方便。
: 所以,我想在matlab 写程式或计算式,然后,excel当作输入接口,将数据丢到matlab
: 计算后,在回传给excel。(在操作上,都不需要开启matlab,只需要打开excel)
可以
步骤有一点麻烦,细心排除障碍后即可达到目标:
1. 把 Matlab compilier 装起来,以便把你的 Matlab
code 编译成 .dll 档
2. 在你的 Excel 里面加入 Module 以便插入 VBA code.
3. 在你刚加入的 Module 里面加入那些 dll 函数的宣告,可以参考https://docs.microsoft.com/en-us/office/client-developer/excel/how-to-access-dlls-in-excel
4. 开始使用
虽然你每次修改你的 Matlab code 都需要重新编译
成 .dll 档,但因为它们已经编译好了,所以 Excel
呼叫它们的时候不需要 Matlab。
备注:
*1. 你可以把这些 .dll 档 copy 到没有 Matlab 的机器
使用,但需要在那台机器上先安装 Matlab runtime
*2. 第一次呼叫那些 function 时可能会稍有 delay,
但第二次以后就会正常,因为它的 .dll 不是完全
native 的机械码,而是混合 p-code 的形式,但
执行起来还是比在 Matlab 里快
祝使用愉快
作者: sunev (Veritas)   2020-12-27 15:49:00
作者: mp19990920 (郝渴连)   2020-12-28 08:13:00
感谢charleshu大大的分享
作者: qaz1234567q (斐波那契数列)   2019-02-24 17:05:00
谢谢分享

Links booklink

Contact Us: admin [ a t ] ucptt.com