要粘贴为值和源格式的 VB 代码

问题描述

我正在使用 Blueprism 来自动化使用 Excel 的流程。我需要复制某些单元格并粘贴为值和源格式。我正在使用以下代码。运行作业后,这些值仍然是公式而不是值。

Dim wb,excel,range As Object

Try

wb = GetWorkbook(Handle,Workbook)
excel = wb.Application

range = excel.Selection
range.PasteSpecial(Paste:=-4163,SkipBlanks:=False,Transpose:=False)
range.PasteSpecial(Paste:=-4122,Transpose:=False)

Success = True

Catch e As Exception
Success = False
Message = e.Message
Finally
wb = nothing
range = nothing
End Try

解决方法

如果你想粘贴数值和数字格式,它应该是 Paste:=12。

对于粘贴值,它是 Paste:= -4163。

Paste:=13 用于“使用源主题粘贴所有内容”。

要粘贴值和所有格式:

range.PasteSpecial(Paste:=-4163)
range.PasteSpecial(Paste:=-4122)