表之间的动态超链接

如果您至少熟悉该功能 VPR (VLOOKUP) (如果没有,那么先在这里运行),那么你应该明白this和其他类似的函数(VIEW、INDEX和SEARCH、SELECT等)总是给出结果 折扣值 – 我们在给定表格中查找的数字、文本或日期。

但是,如果我们想要获得一个实时超链接而不是一个值,通过单击它可以立即跳转到另一个表中找到的匹配项以在一般上下文中查看它,该怎么办?

假设我们有一个大订单表供我们的客户作为输入。 为方便起见(尽管这不是必需的),我将表格转换为动态的“智能”键盘快捷键 按Ctrl+T 并在标签上给出 构造函数 (设计) 她的名字 选项卡订单:

在另一张纸上 综合 我建立了一个数据透视表(虽然它不必完全是一个数据透视表——原则上任何表都适合),其中根据初始数据计算每个客户按月计算的销售动态:

让我们在订单表中添加一列,其中包含一个公式,该公式在工作表上查找当前订单的客户姓名 综合. 为此,我们使用经典的一堆函数 指数 (指数) и 更多曝光 (匹配):

现在让我们将公式包装成一个函数 CELL (细胞),我们将要求显示找到的单元格的地址:

最后,我们把所有已经变成函数的东西 HYPERLINK (超链接),它在 Microsoft Excel 中可以创建到给定路径(地址)的实时超链接。 唯一不明显的是,您必须将开头的井号 (#) 粘贴到收到的地址,以便 Excel 正确地将链接视为内部链接(从工作表到工作表):

现在,当您单击任何链接时,我们将立即跳转到带有数据透视表的工作表上带有公司名称的单元格。

改进 1. 导航到所需列

为了使它真正好,让我们稍微改进一下我们的公式,以便在完成相应订单时,转换不会发生在客户的名称上,而是发生在月份列中的特定数值上。 为此,我们必须记住函数 指数 (指数) 在 Excel 中非常通用,除其他外,可以使用以下格式:

= INDEX( ​​​​D_range; 电话号码; 列号 )

即作为第一个参数,我们可以指定的不是数据透视表中公司名称的列,而是数据透视表的整个数据区,第三个参数是我们需要的列的编号。 可以通过函数轻松计算 (月),它返回交易日期的月份数:

改进2.漂亮的链接符号

第二个函数参数 HYPERLINK – 显示在带有链接的单元格中的文本 – 如果您使用 Windings、Webdings 字体等中的非标准字符而不是平庸的符号“>>”,则可以使文本更漂亮。 为此,您可以使用该功能 SYMBOL (字符),它可以通过它们的代码显示字符。

因此,例如,Webdings 字体中的字符代码 56 将为我们提供一个漂亮的双箭头表示超链接:

改进 3. 突出显示当前行和活动单元格

好吧,为了最终战胜常识,您还可以在我们的文件中附加一个简化版本,突出显示当前行和我们跟随链接的单元格。 这将需要一个简单的宏,我们将挂起它来处理工作表上的选择更改事件 综合.

为此,请右键单击工作表选项卡摘要并选择命令 查看 (看法 码). 将以下代码粘贴到打开的 Visual Basic 编辑器窗口中:

Private Sub Worksheet_SelectionChange(ByVal Target As Range) Cells.Interior.ColorIndex = -4142 Cells(ActiveCell.Row, 1).Resize(1, 14).Interior.ColorIndex = 6 ActiveCell.Interior.ColorIndex = 44 End Sub  

如您所见,这里我们首先从整个工作表中删除填充,然后用黄色(颜色代码 6)填充摘要中的整行,然后用当前单元格填充橙色(代码 44)。

Now, when any cell inside the summary cell is selected (it doesn't matter – manually or as a result of clicking on our hyperlink), the entire row and cell with the month we need will be highlighted:

美女🙂

PS 请记住以启用宏的格式(xlsm 或 xlsb)保存文件。

  • 使用 HYPERLINK 函数创建外部和内部链接
  • 使用 HYPERLINK 功能创建电子邮件

发表评论