为何使用PasteSpecial xlPasteValues仍会粘贴单元格格式?
问题解决:VBA粘贴值仍带格式的处理方法
你的代码里虽然指定了xlPasteValues,但还是带了背景和边框,大概率是因为复制状态没及时取消,或者Excel 365的剪贴板机制导致格式残留。给你两种靠谱的解决办法:
修正粘贴逻辑,取消复制状态
在粘贴后加上取消复制模式的代码,避免剪贴板内容干扰后续操作:basicinformationTW.Range("B2:B9").Copy basicinformationFW.Range("C7").PasteSpecial Paste:=xlPasteValues Application.CutCopyMode = False ' 立即取消复制状态,彻底清除剪贴板里的格式信息直接赋值(更高效,完全规避格式问题)
跳过复制粘贴操作,直接把源单元格的值赋值给目标区域,这种方式根本不会涉及格式复制:' 注意目标区域要和源区域大小匹配(B2:B9共8行,对应C7:C14) basicinformationFW.Range("C7:C14").Value = basicinformationTW.Range("B2:B9").Value
后者不仅不会有格式问题,执行速度也比复制粘贴快很多,推荐优先使用。
内容的提问来源于stack exchange,提问作者Clay Reakes
相关产品推荐
相关产品推荐

