Vba 宏来查找和替换excel链接的部分

Vba 宏来查找和替换excel链接的部分,vba,excel,Vba,Excel,示例行的屏幕截图: 这是我第一次用相对引用录制的宏: ActiveCell.Offset(-2, -3).Range("A1:L1").Select Selection.Copy ActiveCell.Offset(1, 0).Range("A1").Select ActiveSheet.Paste ActiveCell.Offset(0, -1).Range("A1").Select ActiveCell.Rows("1:1").EntireRow.Select Selection.Repl

示例行的屏幕截图:

这是我第一次用相对引用录制的宏:

ActiveCell.Offset(-2, -3).Range("A1:L1").Select
Selection.Copy
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveSheet.Paste
ActiveCell.Offset(0, -1).Range("A1").Select
ActiveCell.Rows("1:1").EntireRow.Select
Selection.Replace What:="Billy Bob", Replacement:="Joanne Sue", LookAt:= _
    xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
    ReplaceFormat:=False
End Sub
我有一个主电子表格链接到许多其他单独的电子表格

D-N中的值分别引用单独链接的图纸中的相同单元格,如下所示:

='G:\WORK\Test folder\Test\Employees\[Billy Bob.xlsx]Sheet1'!$E$2
=HYPERLINK("G:\WORK\Test folder\Test\Employees\Billy Bob.xlsx",B3)
列C的链接引用列B中的值来填充链接的名称,如下所示:

='G:\WORK\Test folder\Test\Employees\[Billy Bob.xlsx]Sheet1'!$E$2
=HYPERLINK("G:\WORK\Test folder\Test\Employees\Billy Bob.xlsx",B3)

因此,我实际上是在尝试更改行中每个链接的名称部分。因此,如果我在B列中输入另一个名称,宏或代码将在B中使用该名称,并将其添加到C中的超链接和D-N中的所有工作表链接中。

看起来您在B列中有名称,每个名称都有一个同名工作表。因此,这将创建这些图纸中范围A1的超链接。确保用工作簿的实际路径替换d
s:\temp\hyper.xlsxd

Sub MakeHyperlinksColumnC()

    Dim x As Long
    Dim aCell As Range
    Dim nm As String

    For x = 2 To ActiveSheet.Columns("C").Cells.Count
        Set aCell = ActiveSheet.Columns("C").Cells(x)
        If Not IsEmpty(aCell.Offset(0, -1)) Then
            nm = aCell.Offset(0, -1).Value
            aCell.Formula = "=HYPERLINK(""[s:\temp\hyper.xlsx]'" & nm & "'!A1"",""" & nm & """)"
        Else
            Exit For
        End If
    Next

End Sub
我认为这比搜索和替换更有效。它还跳过第一行并在第一个空白单元格上退出

另一种方法

实际上你根本不需要代码;在C2中使用如下公式,然后复制:

=HYPERLINK("[s:\temp\hyper.xlsx]'"&B2&"'!A1",B2)

你一个问题也没问。我们能为您提供哪些帮助?我在最后添加了一个编辑以尝试澄清。我不久前看到了这个问题,由于缺乏信息,拒绝尝试回答。tbh,最重要的信息仍然缺失;e、 g.的确切
地址
子地址
参数或的语法(以使用的为准)。确定后,可以建议您是否只调整公式使用
B2
而不是
Billy Bob
,或者您的代码可以修改为在事件宏中工作,这样只需在B列中添加新名称或修改名称就足以生成一行新的调整公式和/或超链接。感谢您让我知道。我已经添加了我的超链接和其他工作表的链接以供参考。