我在工作表上有一组超链接。每个链接中的文本都是 Arial 8pt,并且居中。我知道我可以删除如下链接:
Range("a1:a10").Hyperlinks.Delete
但是,我在删除链接时遇到了字体更改问题;当我运行此删除操作时,每个单元格中的文本都设置为 Arial 10pt 并左对齐。
我检查了这本工作簿的超链接样式,它设置为 Arial 10pt。当样式表明它们应该是 10pt 时,我不确定为什么超链接是 8pt。
无论如何,我试图弄清楚在删除超链接后如何保留单元格的现有格式,使其保持 8pt 并居中。我试过这个:
Sub removeHyperlinks()
Dim rng As Range
Dim subrng As Range
Set rng = ThisWorkbook.Sheets("myData").Range("a1:a10")
For Each subrng In rng
subrng.Copy
subrng.Hyperlinks.Delete
subrng.PasteSpecial Paste:=xlPasteFormats
Next
End Sub
但超链接的单元格仍然以 Arial 10pt 结尾,左对齐。如何保持格式不变?
最佳答案
这是解决它的一种方法:
Dim fntsize As Integer
For Each subrng In rng
fntsize = subrng.Font.Size
subrng.Hyperlinks.Delete
subrng.Font.Size = fntsize
Next
关于vba - 以编程方式删除超链接而不应用超链接样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20055706/