Excel精英培训网

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

[已解决]点击按钮a1工作簿1和工作簿2中所有工作表里的按钮代码都能先后自动运行

[复制链接]
发表于 2013-7-21 18:25 | 显示全部楼层 |阅读模式
在工作簿1工作表1中点击按钮a1,工作簿1和工作簿2中所有工作表里的按钮代码都能先后自动运行,用VBA能编写出这些代码吗?若能,请帮助编写。(附件里只举例子,若工作簿、工作表、按钮都比较多,代码较长,这样可以减少点击次数。这道题是我想出的,不知是否符合实际。)谢谢!
最佳答案
2013-7-21 22:25
附加

点击按钮a1工作簿1和工作簿2中所有工作表里的按钮代码都能先后自动运行.rar

45.38 KB, 下载次数: 4

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2013-7-21 19:42 | 显示全部楼层
宏名称不是 Sub a1_Click()  重建宏去掉后面的 _Click()
直接调用宏
回复

使用道具 举报

 楼主| 发表于 2013-7-21 20:42 | 显示全部楼层
货币学派 发表于 2013-7-21 19:42
宏名称不是 Sub a1_Click()  重建宏去掉后面的 _Click()
直接调用宏

麻烦你帮助编写代码。谢谢!
回复

使用道具 举报

发表于 2013-7-21 21:04 | 显示全部楼层
我简单写下
Private Sub a1_Click()
Call a1
Call b2
Call c1
Call d2
End Sub

Private Sub a1()
Range("c1") = Range("a1") + Range("b1")
End Sub

Private Sub b2()
Range("c1") = Range("a1") * Range("b1")
End Sub

Private Sub c1()
Workbooks("2.xls").Sheet(1).Range("c1") = Range("a1") - Range("b1")
End Sub

Private Sub d2_()
Workbooks("2.xls").Sheet(2).Range("c1") = Range("a1") / Range("b1")
End Sub
回复

使用道具 举报

 楼主| 发表于 2013-7-21 21:34 | 显示全部楼层
货币学派 发表于 2013-7-21 21:04
我简单写下
Private Sub a1_Click()
Call a1

你好:你编写的代码,我试用时不能正常运行。请在附件中编写。谢谢
回复

使用道具 举报

发表于 2013-7-21 22:23 | 显示全部楼层
改了下
我以前遇到的情况是原来在一个工作簿里用按钮连接宏 后来要用另外的工作表控制这个宏 开始时直接调用宏名怎么也不行
后来改了这样的方式 倒不是为了你要的这个目的
回复

使用道具 举报

发表于 2013-7-21 22:25 | 显示全部楼层    本楼为最佳答案   
附加

点击按钮a1工作簿1和工作簿2中所有工作表里的按钮代码都能先后自动运行.zip

48.45 KB, 下载次数: 20

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-31 05:06 , Processed in 0.659033 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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