【Excel VBA】花几秒钟,在多个分表建立返回总表的快捷按钮吧~

论坛 期权论坛 期权     
VBA编程学习与实践   2019-6-9 21:26   2604   0

如果有那麽一天你说即将要离去 我会迷失我自己走入无边人海里……

诸君好,很久之前聊过如何一键生成带超链接的工作表目录:VBA常用小代码001:一键生成带超链接的工作表目录

之后有朋友问,如何一键在分表生成返回总表的按钮?
关于这个问题,也曾回答过函数的解决方法,比较简单,一个函数而已,参见教程链接:如何快速在多个分表批量创建返回总表的超链接?
当然,VBA的方法也不复杂,代码如下:
Sub Mybutton()    Dim sht As Worksheet, btn As Button, strShtName$    On Error Resume Next    strShtName = "总表"    '设置变量shtn为总表的名称,可以根据实际总表的名称做修改    For Each sht In Worksheets        With sht            If .Name  strShtName Then                .Shapes(strShtName).Delete                '删除原有的名称为strShtName的按钮,避免重复创建                Set btn = .Buttons.Add(0, 0, 60, 30)                '新建按钮,释义见小贴士                With btn                    .Name = strShtName                    '命名                    .Characters.Text = "返回总表"                    '按钮的标题                    .OnAction = "Totable"                    '指定按钮控件所执行的宏命令                End With            End If        End With    Next    Set btn = NothingEnd SubSub Totable()    Worksheets(strShtName).Activate    [a1].SelectEnd Sub
小贴士:
1,代码有两个sub过程构成,第一个sub过程遍历工作表,并在每个工作表建立指定宏名称为第2个sub过程的按钮,第二个sub过程是激活名称为"总表"的工作表,并选中a1单元格。
2,第1个sub过程使用add方法在工作表中添加一个按钮控件,add方法语法如下:
表达式.Add(left,right,width,height)
表达式是必须的,代码一个表单控件集合。例如按钮buttons,标签labels,列表框listboxes,复选框checkboxes等。
left和right也是必须的,表示该控件相对于工作表的A1单元格左上角的初始坐标。
width和height是必须的,表示该控件初始化的宽度和高度。
呵~是不是很简单呢?复制代码运行试验一下吧~
……拥抱……致安…………




一码不扫,
可以扫天下?
ExcelHome
VBA编程学习与实践




分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:220
帖子:44
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP