如何知道何时使用事件将新超链接添加到工作表

Posted

技术标签:

【中文标题】如何知道何时使用事件将新超链接添加到工作表【英文标题】:How to know when a new hyperlink is added to a worksheet using an event 【发布时间】:2021-12-09 15:00:49 【问题描述】:

我需要我的代码来自动更改我新创建的超链接名称的字体并更改它的其他字体属性,因此我需要我的代码来检测何时将新的超链接添加到工作表中。

“Worksheet_Change”和“Worksheet_FollowHyperlink”没有帮助。

更新:这是我的代码:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim WB As Workbook
Dim WS As Worksheet
Dim TA As ListObject
Dim TA_DateCol As ListColumn

Set WB = ThisWorkbook
Set WS = WB.Sheets(1)
Set TA = WS.ListObjects(1)

If Not Intersect(Target, TA.Range) Is Nothing Then
    'This is the part which I want my code to detect if a new hyperlink
    'is added but nothing happens my guess is it's because 'Target' type
    'in this event handler is a 'Range' not a 'Hyperlink'
End If

End Sub

任何帮助和建议将不胜感激。The Picture of my code so far

【问题讨论】:

为什么Worksheet_Change 不起作用?你能提供你试图帮助说明你想要完成什么的图片吗?即使代码完全损坏,它仍然可以帮助我们更好地了解您的最终目标。 到目前为止,我已经添加了我的代码图片。谢谢。 请不要将您的代码显示为图像,您可以轻松地将代码复制并粘贴到问题中。您让人们难以调试您的问题,因为我们无法复制和粘贴代码。 向范围添加超链接不会触发 worksheet_change 事件。我想你希望能够检查一下。另一种选择是将工作簿的超链接样式更新为您的要求,请参阅support.microsoft.com/en-us/office/… 感谢 Ike,但我希望我的工作簿能够自动完成。 【参考方案1】:

向范围添加超链接不会触发 worksheet_change 事件。

因此无法通过代码检测到这一点。

解决方案是根据您的要求更新工作簿的超链接样式。

有很多教程解释了如何做到这一点,例如https://support.microsoft.com/en-us/office/change-the-font-format-for-hyperlinks-672c2905-ad3e-40be-b281-811e68386243

【讨论】:

以上是关于如何知道何时使用事件将新超链接添加到工作表的主要内容,如果未能解决你的问题,请参考以下文章

将新工作表添加到XLSM宏Excel文件时出错

C#互操作:将新工作表添加到现有文件后,excel进程未退出[重复]

SqlAlchemy 将新字段添加到类并在表中创建相应的列

用于将 google drive 中的文件名列表与 google sheet 列中的名称列表进行比较的 Apps 脚本,以将新文件从驱动器添加到工作表

组合框更改事件正在触发工作表中的任何更改

将背景颜色添加到单元格 Google 工作表(python)