如何从工作表中删除公式,但保留他们的计算值

你能不能让我知道我怎样才能从工作表中删除所有的公式,但在excel VBA中保留计算结果?

我有一张名为map的表格,其中有很多计算列,现在我想删除所有这些公式,但仍保留结果保存到一个新的工作表。

方式1 (礼貌@rdhs)

 Sub Sample() Dim ws As Worksheet Set ws = ThisWorkbook.Sheets("DTMGIS") ws.UsedRange.Value = ws.UsedRange.Value End Sub 

方式2 Using Copy - PasteSpecial - Values

 Sub Sample() Dim ws As Worksheet Set ws = ThisWorkbook.Sheets("DTMGIS") With ws.UsedRange .Copy .PasteSpecial Paste:=xlPasteValues, _ Operation:=xlNone, SkipBlanks:=False, Transpose:=False Application.CutCopyMode = False End With End Sub 

方式3使用SpecialCells

 Sub Sample() Dim ws As Worksheet Dim rng As Range Set ws = ThisWorkbook.Sheets("DTMGIS") On Error Resume Next Set rng = ws.Cells.SpecialCells(xlCellTypeFormulas) On Error GoTo 0 If Not rng Is Nothing Then rng.Value = rng.Value End If End Sub