• 手机版

    扫码体验手机版

  • 微信公众号

    扫码关注公众号

游客您好
Lv.2 注册会员
740号会员,189活跃度,2018/11/14 加入学习
  • 110发帖
  • 5主题
  • 0关注
  • 0粉丝
这个人很懒,什么也没有留下。
优秀讲师更多
课堂交流更多

[已解决] 自定义的函数如何在VBA中调用

[复制链接]
简单爱你 发表于 2021-2-19 00:53:21 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
如题,自己编写了一个自定义函数,且打开excel工作簿后可以正常使用,想问一下如果在vba中调用该自定义函数应该怎么操作。试验了一下,application.worksheetfunction 后面并没有显示该定义函数,求解。谢谢




11193112038081.png 11193112038082.png 11193112038083.png 11193112038084.png 11193112038085.png
11193112038086.rar (825.83 KB, 下载次数: 0)


11193112038087.rar (10.8 KB, 下载次数: 0)
回复

使用道具 举报

精彩评论18

hnhxlxw 发表于 2021-2-19 01:00:21 | 显示全部楼层
直接调用!!!
x = 自定函数名(参数)
回复

使用道具 举报

infantry 发表于 2021-2-19 01:04:22 | 显示全部楼层
直接调用!!!
x = 自定函数名(参数)


我的自定义函数放在了xlam文件中,在vba中调用显示子函数或过程未定义
回复

使用道具 举报

秋天的农药 发表于 2021-2-19 01:11:22 | 显示全部楼层
ballgd 发表于 2018-11-13 18:13
我的自定义函数放在了xlam文件中,在vba中调用显示子函数或过程未定义


直接调用!如果不行请上传附件!
回复

使用道具 举报

东城大少 发表于 2021-2-19 01:14:22 | 显示全部楼层
直接调用!如果不行请上传附件!


附件已经上传,麻烦您帮忙看一下谢谢
回复

使用道具 举报

独孤狐 发表于 2021-2-19 01:19:22 | 显示全部楼层
自定义参数→数据类型是Integer
而代码中使用的参数→数据类型是Range
数据类型不相同,应把数据类型统一为Range

Function addd(a As Range, b As Range)
addd = a + b
End Function

Sub a()
Range("a1") = addd(Range("e7"), Range("e8"))
End Sub
回复

使用道具 举报

yyfreeliang 发表于 2021-2-19 01:25:23 | 显示全部楼层
自定义参数→数据类型是Integer
而代码中使用的参数→数据类型是Range
数据类型不相同,应把数据类型统一 ...


我修改了参数类型,还是出现子函数或过程未定义的错误
回复

使用道具 举报

426 发表于 2021-2-19 01:29:23 | 显示全部楼层
原因见下楼分析!
回复

使用道具 举报

kevin 发表于 2021-2-19 01:36:23 | 显示全部楼层
因昨天您没提供完整附件,无法测试实际情况?
如果还出现提示,可加上application.
Sub a()


您好,使用application后面没有 带出 addd的方法,出错。我重新传了一下附件,包括加载的自定义函数xlam文件 和 普通的xls文件,麻烦您看一下。谢谢
回复

使用道具 举报

dzzl 发表于 2021-2-19 01:42:23 | 显示全部楼层
ballgd 发表于 2018-11-14 15:36
您好,使用application后面没有 带出 addd的方法,出错。我重新传了一下附件,包括加载的自定义函数xla ...


根据您提供附件,经测试,原因是自定义函数虽然已另存为加载宏,但example工作薄却没有加载该加载宏!
方法:打开example工作薄→点击文件→点击选项→点击加载项→点击转到→找到相应加载宏在方框中打√→点确定
以上适合2010版及以上excel,其它版本请论坛搜加载宏!
回复

使用道具 举报

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

本版积分规则

全国统一客服电话
025-66044769

24x7小时免费咨询

  • 关注官方微信

  • QQ在线客服1

    在线联系

    QQ在线客服2

    在线联系
  • 南京优易多网络科技有限公司
  • 南京市六合区龙池街道雄州南路399
Powered by Discuz!X3.4 ©2015-2019 YouYiDuo Inc. 南京优易多网络科技有限公司 版权所有( 苏ICP备16017959号-5 )