Excelmacros在单元格中查找文本并在单元格上插入超链接

我们正在pipe理Web系统中的一些系统错误,并在电子表格中为执行程序设置优先级。 每张票都有一个“FD-”和四个数字作为ID。 Web系统有一个链接末尾有“FD – ####”的超链接。 最终结果将如下所示 – http://www.mytickets.com/FD-####

我想运行一个macros,find所有的FD – ####并插入每个超链接。

在单个单元格中可能有多个FD – ####,并且肯定会有其他文本。

我会通过每个链接添加链接,但有150多个。

谢谢!

正如在评论中提到的,Excel似乎不支持单元格中的多个超链接。

下面的代码将进行从票证到链接的replace:

Option Explicit Sub loop_over_cells() Dim a_cell Dim replaced As String For Each a_cell In ActiveSheet.UsedRange Debug.Print "old value " & a_cell.Value replaced = RegexReplace(a_cell.Value, "(fd-\d{4}\b)", "=hyperlink(" & Chr(34) & "http://cnn.com/$1" & Chr(34) & ")") a_cell.Value = replaced Debug.Print "new value " & a_cell.Value Next End Sub Function RegexReplace(search_string, ptrn, rplc) Dim regEx Set regEx = CreateObject("VBScript.RegExp") regEx.Pattern = ptrn regEx.IgnoreCase = True regEx.Global = True RegexReplace = regEx.replace(search_string, rplc) End Function