ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[求助] 如何和给单元格下拉菜单的每一项指定超链接

[复制链接]

TA的精华主题

TA的得分主题

发表于 2014-2-12 13:23 | 显示全部楼层 |阅读模式
把工作簿中说有工作表的名称放在一个单元格的下拉菜单中怎么实现?能否实现选中一项时就激活相应工作表,最好是用比较简单的方法!

TA的精华主题

TA的得分主题

发表于 2014-2-12 13:50 | 显示全部楼层
Private Sub Worksheet_Change(ByVal Target As Range)
   
    Application.EnableEvents = False
    If Target.Address(0, 0) = "B2" Then
        If Target.Value <> "" Then
            str1 = Target
            Sheets(str1).Select
        End If
    End If
    Application.EnableEvents = True
End Sub

TA的精华主题

TA的得分主题

发表于 2014-2-12 13:51 | 显示全部楼层
详见附件内容,看看是不是你需要的

下拉菜单跳转.zip

7.39 KB, 下载次数: 419

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-2-12 15:27 | 显示全部楼层
liulang0808 发表于 2014-2-12 13:51
详见附件内容,看看是不是你需要的

是的,这个是怎么设置的啊,麻烦将一下详细步骤,先谢了!

TA的精华主题

TA的得分主题

发表于 2014-2-12 15:28 | 显示全部楼层
下拉列表正常设置就完了
Private Sub Worksheet_Change(ByVal Target As Range)
   
    Application.EnableEvents = False
    If Target.Address(0, 0) = "B2" Then
        If Target.Value <> "" Then
            str1 = Target
            Sheets(str1).Select
        End If
    End If
    Application.EnableEvents = True
End Sub
主要是这段 表格change事件

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-2-12 15:34 | 显示全部楼层
liulang0808 发表于 2014-2-12 15:28
下拉列表正常设置就完了
Private Sub Worksheet_Change(ByVal Target As Range)
   

之前没注意看代码,下拉列表的值得自己一个一个输啊?
我还以为有比较简单的法子哦,不过效果还是比较理想,谢了!

TA的精华主题

TA的得分主题

发表于 2014-2-12 15:36 | 显示全部楼层
cscandyman 发表于 2014-2-12 15:34
之前没注意看代码,下拉列表的值得自己一个一个输啊?
我还以为有比较简单的法子哦,不过效果还是比较理 ...

下拉列表,可以录制宏,自己修改下,因为这个仅仅是针对跳转到别的表格上的实例

TA的精华主题

TA的得分主题

发表于 2014-7-27 09:20 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2014-7-27 17:53 | 显示全部楼层
liumang7788 发表于 2014-7-27 09:20
不会修改啊!

增加一段代码,将工作表名称赋给下拉列表:

Dim strS    '设置为公共变量

Private Sub Worksheet_Activate()
Dim ws
For Each ws In Sheets
    strS = strS & "," & ws.Name
Next
With Range("B2").Validation
    .Delete
    .Add Type:=xlValidateList, Formula1:=strS
End With
End Sub

另外想请教下 liulang0808  老师,刚好这个例子是工作表转跳的示例,用 Sheets(str1).Select 就实现了超级链接的功能。
若我的下拉列表的内容不是工作表名称,并且是指定其它的超级链拉(当然有列表内容与对应超级链拉的清单),则如何修改代码?

TA的精华主题

TA的得分主题

发表于 2014-7-27 19:05 | 显示全部楼层
如附件所示: 工作表名称列表0727.rar (15.12 KB, 下载次数: 315)
选择下拉列表,同时打开对应的超级链接。

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

本版积分规则

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

GMT+8, 2024-11-18 13:28 , Processed in 0.047238 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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