ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 5065|回复: 21

[求助] 动态添加的按钮如何执行带参数的宏?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2019-3-23 17:56 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
我通过下面的语句在工作表上动态添加了一些按钮(不是active控件类型的按钮),我希望使用它们的text属性的值作为参数执行带有参数的宏add(byval str as string),应该怎么写代码呢?

For i = 1 To UBound(name) - 1
    ws.Shapes.AddOLEObject
    Set myshape = ws.Shapes.AddFormControl(xlButtonControl, 10, 30 * i + 20, 100, 20)
    With myshape
        .Name = i
        With .TextFrame.Characters
            .Text = i & "." & name(i)
        End With
        .OnAction = "add"      '这里写成这样肯定不对,该写成什么呢?
    End With
Next
恳请各位大侠帮忙!谢谢了!

TA的精华主题

TA的得分主题

发表于 2019-3-23 18:36 | 显示全部楼层
提问技巧

1.提问之前可以先在论坛搜索相关帖子

2.提问的时候尽量问题说明白点 要有效果图 有表格附件

3.如果别人帮你解决了问题一定要记得回复别人结果 和说声谢谢 有鲜花的话也可以送几朵

4.问题解决后你可以学习别人解决问题的方法

[新手必读]发帖须知、上传附件、截图动画、压缩解压、靓帖推荐:
http://club.excelhome.net/thread-184567-1-1.html

Excel Home论坛学习及使用完全攻略(新人必读):
http://club.excelhome.net/thread-449518-1-1.html

EH技术论坛的最佳学习方法:
http://club.excelhome.net/thread-117862-1-1.html

TA的精华主题

TA的得分主题

发表于 2019-3-23 22:39 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
.OnAction = "模块1.collect"

模块名.过程名

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-3-24 09:52 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
Datous 发表于 2019-3-23 22:39
.OnAction = "模块1.collect"

模块名.过程名

我的那个带参数的宏add(byval str as string)本身就在模块1里面。。。。。。
麻烦大侠详细讲解一下,谢谢。我的手机号码是18839752166,如果可以,我跟你手机联系,再次感谢

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-3-24 11:02 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-3-25 10:21 | 显示全部楼层
请路过的大侠帮帮我吧,谢谢

TA的精华主题

TA的得分主题

发表于 2019-3-25 12:47 | 显示全部楼层
weiyonggang 发表于 2019-3-25 10:21
请路过的大侠帮帮我吧,谢谢
我的那个带参数的宏add(byval str as string)本身就在模块1里面。。。。。。


而你,这样调用
.OnAction = "add"  


参数呢?

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-3-25 20:50 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2019-3-25 22:21 | 显示全部楼层
weiyonggang 发表于 2019-3-25 20:50
谢谢大侠热心帮我
请问该怎么写呢?

如果上传你的附件这个问题,相信早就得到有效解决了。

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-3-26 15:04 | 显示全部楼层
本帖最后由 weiyonggang 于 2019-3-26 18:00 编辑

我的设计构想是通过点击用户窗体中的不同按钮,获得不同caption的不同的age的结果。
具体要求是:

通过单击用户窗体中的仅有的一个按钮,动态生成4个或更多个按钮,并且它们的caption均是不同的人的姓名。当点击生成的按钮时能获得因为caption不同产生不同的age的结果。


请各位大侠慷慨出手帮帮忙,谢谢了!

fujian.rar

11.01 KB, 下载次数: 12

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

本版积分规则

关闭

最新热点上一条 /1 下一条

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-20 17:12 , Processed in 0.044481 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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