文章背景: 处理表格时,有时需要选中单元格区域,将区域内单元格的公式复制粘贴为数值
。如果是连续的单元格区域,这样的操作是可行的。如果是不连续的单元格区域,这样的操作会报错。
针对不连续的单元格区域,可以通过编写VBA代码的方式实现。
以下代码实现的功能是:针对选中的不连续的单元格区域,(1) 将单元格内的公式复制粘贴为数值;(2) 将单元格底色改为绿色。
Option Explicit
Sub CopyPasteValue():
Dim Item As Range
For Each Item In Selection:
'复制,并粘贴为数值
Item.Copy
Item.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
'单元格底色设置为绿色, 以下代码通过录制宏的方式得到。
With Item.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorAccent6
.TintAndShade = 0.399975585192419
.PatternTintAndShade = 0
End With
Next
End Sub
效果演示:
参考资料:
[1] 不连续单元格如何复制贴成值(https://club.excelhome.net/thread-1416087-1-1.html)
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。