在.PasteSpecial上保留上标格式
我正在复制从一个工作簿到另一个工作簿的范围。 由于源范围中的大部分数据是我需要按值粘贴的公式:
With TargetRange .PasteSpecial Paste:=xlPasteAll .PasteSpecial Paste:=xlPasteColumnWidths .PasteSpecial Paste:=xlPasteValues End With
问题是xlPasteValue破坏(静态)单元格中的上标格式。 我怎样才能保留上标格式的值来粘贴?
我可以通过xlPasteAll来重新粘贴那些带有上标格式的静态单元格,但是这有点混乱,并且不可维护。
复制粘贴function是作为一个范围或某些属性的单元格的总对象。 其中一个range.font属性是上标,因此如果将其应用于COMPLETE单元格,它将在此处列出并作为文本格式的过去传递。
现在,也可以仅将字体格式应用于单元格中有限的一组字符。 单个文本字符设置格式的“特征”不是直接范围属性,但它是范围(或单元格)中的字符的属性。 现在这是一个混乱的事情来处理。
在这里看到一些代码logging上标的应用程序的字符的子集:
With rTest.Characters(Start:=1, Length:=2).Font .Superscript = True End With With rTest.Characters(Start:=3, Length:=2).Font .Subscript = False End With
如果你看看你的(本地人)观察窗口,你会发现字符属性没有列出。 微软在这里看到关于Office 2012的这个话题:
http://msdn.microsoft.com/en-us/library/office/ff198232%28v=office.14%29.aspx
“字符对象不是一个集合。”
简而言之:你想要的是用这个“特征”和xlPasteAll
来标识这些单元格。 字符属性不能通过VBA查询,因为它似乎。