为了账号安全,请及时绑定邮箱和手机立即绑定

VBA中引用API函数提示“提示子过程或函数未定义”?

VBA中引用API函数提示“提示子过程或函数未定义”?

蛊毒传说 2019-02-05 15:07:25
VBA中引用API函数提示“提示子过程或函数未定义”,是否需要勾选工具->引用当中某个选项?或有其他方法?
查看完整描述

3 回答

?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

代码贴出来吧 API不需要引用什么 直接写声明 然后调用即可
Private Declare Function getwindowlong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nindex As Long) As Long
Private Declare Function setwindowlong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nindex As Long, ByVal dwnewlong As Long) As Long
Private Declare Function findwindow Lib "user32" Alias "FindWindowA" (ByVal lpclassname As String, ByVal lpwindowname As String) As Long
Alias 后面的函数名有大小写区别

查看完整回答
反对 回复 2019-03-15
?
慕妹3146593

TA贡献1820条经验 获得超9个赞

不需要,需要在程序的Option中声明这个API就可以了,你看看书,应该是少了声明,形如
Declare Function API名字 Lib "API库名,一般是kernel32等" (ByVal 参数列表) As 返回值

查看完整回答
反对 回复 2019-03-15
?
慕容森

TA贡献1853条经验 获得超18个赞

估计是你复制的时候声明里面包含了非法字符或某些地方没有空格,我以前经常遇到这种情况
建议用vb自带的工具 “API 文本浏览器”来查找并复制API函数
****************************
复制了你代码,在我这边我删除了其中的下划线,使一个声明占一行
运行测试没问题!

查看完整回答
反对 回复 2019-03-15
  • 3 回答
  • 0 关注
  • 1903 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信