excel - 创建指向新工作表的超链接
问题描述
我的“主表”中有一长串名字。我需要遍历这些行,创建一个具有相同名称的工作表,然后向该工作表添加一个超链接。
我能够创建工作表,但无法创建指向匹配工作表的适当超链接。
这是代码片段:
'HERE, I COUNT HOW MANY INDIDUAL ROWS THERE ARE IN COLUMN A'''
Sheets("MainSheet").Range("A1").Select
Range(Selection, Selection.End(xlDown)).Select
Total = Selection.Count
'here, I copy the cell value and create a new sheet, using the cell value as the name
'Since some cells had more than 31 characters, I had to create a code to only take the first 30 characters
For i = Total To 1 Step -1
Sheets("MainSheet").Cells(i, 1).Select
Take = Left(ActiveCell, 30)
Sheets.Add.Name = Take
Worksheets("MainSheet").Activate
Worksheets("MainSheet").Cells(i, 1).Select
Next
该代码有效。
我现在需要遍历同一个列表并创建适当的超链接。
这是行的示例:
温度探头和数据传感器 A1
温度探头和数据传感器 A2
温度探头和数据传感器 A3
温度探头和数据传感器 A4
空气和压力传感器 A1
所有这些都有自己的工作表,但我想单击单元格值将我直接带到该工作表,而无需手动搜索 200 多张工作表。简而言之,主工作表将充当 Excel 工作簿其余部分的目录。
解决方案
要链接同一工作簿,请使用此格式的公式 =HYPERLINK("[Workbook]Worksheet!A1", "Link Text")。有关详细信息,请参阅在 Excel 中使用超链接。
您甚至可以让公式找到工作簿名称,假设工作簿名称和文件路径不包含任何方括号。有关详细信息,请参阅此页面。公式是=HYPERLINK(MID(CELL("filename"), FIND("[",CELL("filename")), (FIND("]",CELL("filename")))-FIND("[",CELL("filename"))+1) &A5 &"!A1", "Link Text")
。更改该公式的最后一部分,其中A5
是具有工作表名称的单元格,A1
是链接的目标,并且Link Text
是任何文本或单元格引用。
如果您粘贴带有代码的公式,则使用两个引号将一个引号粘贴到公式中,ActiveCell.Formula = "=HYPERLINK(MID(CELL(""filename""), FIND(""["",CELL(""filename"")), (FIND(""]"",CELL(""filename"")))-FIND(""["",CELL(""filename""))+1) &A5 &""!A1"", ""Link Text"")"
.
或者...这是一篇关于如何将目录添加到工作簿的帖子。也许您可以保存并运行一个单独的宏。
推荐阅读
- database - 我们正在使用 Sybase/ODBC 如何在运行长批量 SQL 查询时处理断开连接?
- reactjs - React 360 从组件渲染到位置
- jquery - 如何让孩子 100% 的屏幕
- php - 肥皂和 laravel 不能一起工作
- python - 在元组列表中查找重叠元素?
- f# - 改进 .Net Core 上的编辑运行周期时间
- c# - 表单在自定义事件处理程序中多次实例化
- r - R 中的时间序列交叉验证:使用 tsCV() 和 tslm()-模型
- selenium - 用于在 Ubuntu 上运行 Selenium 测试的 Jenkins 设置
- tableau-api - 如何在 Tableau 中将上一年的总计显示到当前年份??无需创建参数