【发布时间】:2013-12-02 01:41:48
【问题描述】:
我在工作表上有一组超链接。每个链接中的文本都是 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,左对齐。如何保持格式不变?
【问题讨论】:
-
我知道,当超链接自行格式化时,您可以“撤消”,并且需要后退一步才能离开打字。您可以尝试添加撤消吗? stackoverflow.com/questions/339228/… 或 stackoverflow.com/questions/7004754/…
-
我从来没有这样做过,所以我只是把它作为一种可能性扔掉,仅供参考。
-
我刚刚尝试在
subrng.Hyperlinks.Delete行之后添加Application.Undo,结果出现Method 'Undo' of object '_Application' failed错误。