如何在 Excel 中创建包含指向每个工作表的超链接的下拉列表?

ms excelmicrosoft technologiescomputers更新于 2024/8/19 21:00:17

在 Excel 中,创建下拉列表非常有用,它允许用户快速导航到工作簿中的不同工作表。实现此目的的一种方法是使用 VBA 代码创建一个包含指向工作簿中每个工作表的超链接的下拉列表。

在本教程中,您将逐步学习如何创建一个宏,该宏将在指定单元格中创建一个包含活动工作簿中每个工作表名称的下拉列表。该宏还将在下拉列表旁边的每个单元格中创建一个指向相应工作表的超链接。通过学习本教程,您将能够创建一种更方便、更高效的方式来导航您的 Excel 工作簿,从而节省您的时间和精力。让我们开始吧!

创建包含指向每个工作表的超链接的下拉列表

在这里,我们将首先创建一个 VBA 模块,然后运行它来完成任务。让我们通过一个简单的过程,了解如何创建一个包含指向 Excel 中每个工作表的超链接的下拉列表。

步骤 1

考虑任何包含多个工作表的工作簿。

首先,右键单击工作表名称,然后选择"查看代码"以打开 VBA 应用程序。然后,点击"插入"并选择"模块",然后将以下文本复制到类似于下图的文本框中。

右键单击 > 查看代码 > 插入 > 模块 > 复制代码

代码

Sub CreateSheetLinksDropdown()
   Dim ws As Worksheet
   Dim list() As String
   Dim i As Integer
    
   ReDim list(1 To ActiveWorkbook.Worksheets.Count)
    
   i = 1
    
   For Each ws In ActiveWorkbook.Worksheets
      list(i) = ws.Name
         i = i + 1
   Next ws
   Range("A1").Validation.Delete
   Range("A1").Validation.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:=Join(list, ",")
   For i = 1 To UBound(list)
      Range("A1").Hyperlinks.Add Anchor:=Range("B" & i), Address:="", SubAddress:="'" & list(i) & "'!A1", TextToDisplay:="Go to " & list(i)
   Next i
End Sub

代码中,A1 单元格用于创建下拉列表。

步骤 2

现在将工作表保存为启用宏的模板,并在 VBA 应用程序中点击 F5 键,即可成功创建下拉列表。

总结

在本教程中,我们用一个简单的示例演示了如何在 Excel 中创建一个包含指向每个工作表的超链接的下拉列表,以突出显示特定数据集。


相关文章


有用资源