Is there a way to make Conditional Formatting ignore the FollowedHyperlink flag?

会有一股神秘感。 提交于 2020-02-08 02:27:32

问题


I have a table of contents in Excel 365. In the table, column 2 contains the names of worksheets and column 3 contains the names of tables and/or named ranges in the associated worksheet. I used the HYPERLINK function to link each cell to its specific component: hyperlinks for the worksheet column go to cell A1 on the associated worksheet; hyperlinks in the table/named range column go to that specific table or named range.

Since this results in several repeats of worksheet names, I used conditional formatting to change the text to white when the worksheet name is a repeat of the one directly above it. This makes it look more like an outline. It works like a charm up until the point that I click on the link in a repeated cell, making it a FollowedHyperlink. When I return to the table, this is no longer whited out. Is there a way to make these stay white, even after they've been followed?

Here's the formula I used for the conditional formatting rule applied it throughout the range =$C$6:$C$24:

=C5=C6

Here's what it looks like before I click one of the whited-out cells:

Here's what it looks like after I click one of the whited-out cells:


回答1:


Urdearboy posted a link showing how to change the style of a followed link.

https://superuser.com/questions/728825/how-do-i-prevent-excel-from-changing-the-color-of-a-clicked-link/819931#819931

It is probably the best solution without using VBA.

But if you want some not control over it, if for example, you may want all links in a table if contents to be uniform color regardless if they were taken or not, but you want links in the rest of the book to change. That's as easy as a single line of VBA in the worksheet's SheetFollowHyperlink event:

Target.Range.Font.Color = vbBlue

And if you wanted to apply it to the entire workbook instead of a single sheet you would put it in the workbook's SheetFollowHyperlink event.

But if you want to be a little creative...

You could make the link disappear by blending it with the background color:

Target.Range.Font.Color = Target.Range.Interior.Color

Or you can draw attention to it, by changing the back color:

Target.Range.Interior.Color = vbYellow

Really, your imagination is the only limit. You can do just about anything you'd ever want to do ( and a lot more of things you would never want to do).



来源:https://stackoverflow.com/questions/60086285/is-there-a-way-to-make-conditional-formatting-ignore-the-followedhyperlink-flag

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!