Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2547|回复: 4

[已解决]怎么vba调用工作表函数出错?

[复制链接]
发表于 2015-10-27 19:33 | 显示全部楼层 |阅读模式
QQ图片20151027192628.png
如题,如图,工作表里,有这个工程函数呀。为什么在vba里调用不了呢?
是不是方法不对,或者还需要其他的东西。
最佳答案
2015-10-28 09:43
参考:http://www.excelpx.com/thread-371957-1-1.html


Sub test()
    Dim ID, x

    '例1:调用lcm(),最小公倍数
    ID = ExecuteExcel4Macro("REGISTER.ID(""" & Application.LibraryPath & "\Analysis\ANALYS32.XLL"",""lcm"")")
    x = Run(ID, 36, 90, 72)    'x= 360
    Debug.Print x

    '例2:调用hex2bin(),十六进制转二进制
    ID = ExecuteExcel4Macro("REGISTER.ID(""" & Application.LibraryPath & "\Analysis\ANALYS32.XLL"",""hex2bin"")")
    x = Run(ID, 12)    '十六进制12表示十进制的18,也就是二进制的10010
    Debug.Print x

End Sub

发表于 2015-10-27 20:25 | 显示全部楼层
  1. Application.WorksheetFunction.Hex2Bin(Range("a4").Value)
复制代码
回复

使用道具 举报

 楼主| 发表于 2015-10-28 08:26 | 显示全部楼层
QQ截图20151028082011.png
一样呀,excel2003,会不会是版本问题,还是其他问题。
回复

使用道具 举报

发表于 2015-10-28 09:43 | 显示全部楼层    本楼为最佳答案   
参考:http://www.excelpx.com/thread-371957-1-1.html


Sub test()
    Dim ID, x

    '例1:调用lcm(),最小公倍数
    ID = ExecuteExcel4Macro("REGISTER.ID(""" & Application.LibraryPath & "\Analysis\ANALYS32.XLL"",""lcm"")")
    x = Run(ID, 36, 90, 72)    'x= 360
    Debug.Print x

    '例2:调用hex2bin(),十六进制转二进制
    ID = ExecuteExcel4Macro("REGISTER.ID(""" & Application.LibraryPath & "\Analysis\ANALYS32.XLL"",""hex2bin"")")
    x = Run(ID, 12)    '十六进制12表示十进制的18,也就是二进制的10010
    Debug.Print x

End Sub

回复

使用道具 举报

 楼主| 发表于 2015-10-28 16:45 | 显示全部楼层
嗯,就是这个意思了,感谢 爱疯。
原来还有这么一说,,好像在2010中,可以直接当工作表函数使用,在2003中,原来要这样调用。。

感谢。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-24 23:06 , Processed in 0.493676 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表