在Excel中删除公式保留数据

在Excel中删除公式保留数据

使用公式获得所需结果后,您可能需要删除公式并保留通过这些公式获得的数据。

这样做通常是为了删除不再需要的公式并节省处理能力(因为每次在工作表中进行更改时都会重新计算公式)。

另一种情况可能是当您将电子表格发送给其他人并希望避免混淆或保护您的公式不被意外更改时。

在本文中,我将向您展示一些删除公式但将数据保留在 Excel 中的简单方法。 您可以使用一些键盘快捷键、内置的选择性粘贴选项甚至 VBA 轻松完成此操作。

推荐:如何修复Windows 10/11中Epic Games Launcher LS-0014错误

使用键盘快捷键

删除公式并将这些公式的结果转换为值的最快、最简单的方法是使用键盘快捷键。

在本节中,我们将讨论用于删除公式和在 Excel 中保留数据的两个键盘快捷键。

[New Shortcut] Control + Shift + V

如果您使用的是 Excel for Microsoft 365 或 Excel for Web,则可以使用此新快捷方式。

此快捷方式于 2022 年 10 月发布,仅适用于 2022 年 10 月之后的 Excel for Microsoft 365 版本/内部版本。所有 Excel for Microsoft 365 用户都可以访问它,但较旧版本的 Excel 没有此权限。

下面,我有一个示例数据集,其中有用于计算 D 列中每个销售代表的佣金的公式,我想删除公式但保留值。

在Excel中删除公式保留数据

以下是执行此操作的步骤:

  1. 选择包含要删除的公式的单元格区域。 在这种情况下,我会选择 D2:D11
  2. 按 Control + C 复制选定的单元格。
  3. 保持选择相同的范围,然后使用以下快捷方式
Control + Shift + V

您需要按住 Control 和 Shift 键,然后按 V 键。

上述键盘快捷键旨在将复制的数据作为纯文本值粘贴到 Excel 中。

您还可以使用它从任何来源复制数据,例如网页或其他 Office 应用程序(例如 MS Word 或 PowerPoint),并将其作为值粘贴到 Excel 中,无需任何格式或公式。

笔记: 根据发行说明 Microsoft 表示,此功能可用于 Excel for Microsoft 365,并且也将针对 Excel for Mac 发布。

有趣的事实:这个快捷方式在 Google Sheets 中已经存在很多年了,许多 Excel 粉丝,包括我自己,一直要求 Microsoft 在 Excel 中使用这个快捷方式。 很高兴现在发生了。

所有版本的快捷方式

如果您使用的是较旧版本的 Excel,并且 Control + Shift + V 快捷方式不适合您,则以下是适用于任何 Excel 版本的快捷方式。

ALT + E + S + V + Enter

要使用此快捷方式:

  1. 选择包含要删除的公式的单元格区域。
  2. 按 Control + C 复制单元格。
  3. 在仍选择范围的情况下,按 ALT + E + S (一个键接着另一个键)打开“选择性粘贴”对话框。
粘贴特殊对话框
  1. V键 选择“值”选项。
在特殊粘贴对话框中选择值选项
  1. 按回车键 确认并粘贴值,有效删除公式。

此快捷方式使用内置的粘贴特殊选项将复制的单元格粘贴为值。

因此,如果您选择的单元格具有公式,此快捷方式将删除公式但保留数据。

通过使用这些键盘快捷键之一,您将能够删除 Excel 中的公式,同时保留值/数据。

Also read: Excel Paste Special Shortcuts

使用选择性粘贴选项

如果您不喜欢学习新的键盘快捷键或无法使用 Control + Shift + V 快捷键,仍然有一些简单的方法可以在保留数据的同时删除公式。

选择性粘贴对话框

下面,我有一个数据集,其中 D 列中有一个公式,我想删除该公式,同时将公式的结果保留为值。

具有我们要删除的公式的数据集

以下是使用“选择性粘贴”对话框执行此操作的步骤:

  1. 选择包含要删除的公式的范围。
  2. 复制范围。 您可以通过右键单击该范围,然后选择“复制”选项,或使用快捷键 Control + C 来完成此操作
复制包含要删除的公式的列
  1. 选择相同的范围后,右键单击,然后单击“选择性粘贴”选项。 这将打开“选择性粘贴”对话框。
点击特殊粘贴
  1. 选择值选项。
在特殊粘贴对话框中选择值选项
  1. 单击“确定”

上述步骤会将复制的单元格粘贴到所选范围内,但由于我们在步骤 4 中选择了“值”选项,因此它只会粘贴值。

由于我们最初选择的单元格具有公式,然后我们将值粘贴到它们上面,因此导致公式被删除,而值仍然保留(作为静态值)。

Also read: How to Multiply a Column by a Number in Excel

在功能区中粘贴特殊选项

删除公式并仅保留值的另一种方法是使用右键单击菜单中的“粘贴为值”选项。

让我们使用下面的数据集,其中 D 列中有一个公式,我想删除该公式并保留值。

具有我们要删除的公式的数据集

以下是执行此操作的步骤:

  1. 选择包含要删除的公式的范围。
  2. 复制范围。 您可以通过右键单击该范围,然后选择“复制”选项,或使用快捷键 Control + C 来完成此操作
  3. 现在单击“主页”选项卡。
  4. 在“剪贴板”组中,单击“粘贴”选项下方的小箭头图标。
单击功能区中的粘贴选项
  1. 选择粘贴值选项。
单击粘贴为值图标

上述步骤会将复制的数据作为值粘贴到选定的单元格区域上,这在我们的示例中意味着公式将与静态值一起删除。

Also read: How to Remove Conditional Formatting in Excel

光标摆动技巧

这是一个非常酷的技巧,但没有多少人知道,它会让你看起来像一个 Excel 魔术师。

虽然这种方法比以前的方法没有任何优势,但它确实让你看起来很酷。

下面是一个数据集,其中 D 列中有公式,我想删除这些公式并仅保留公式的结果。

具有我们要删除的公式的数据集

以下是使用此光标摆动技巧的方法:

  1. 选择包含要删除的公式的单元格
  2. 将鼠标光标放在所选内容的右边缘。 您会注意到光标变成了四箭头图标(如下所示)
光标变为四个箭头图标
  1. 按住鼠标左键(一直按住),然后将光标稍微向右移动。 您将看到绿色轮廓出现在右侧相邻的列中。
将光标拖动到右侧
  1. 继续按住鼠标左键并将光标移回已有数据的位置。
将光标移回原来的列
  1. 留下鼠标键。 一旦执行此操作,您将看到一个带有一些选项的菜单。
右键菜单中显示其他选项
  1. 选择“仅将值复制到此处”选项。
单击此处仅复制值

一旦您在步骤 6 中单击“仅复制为值”选项,公式就会被删除,并且单元格中的数据将仅作为静态值。

注意:就个人而言,我发现此方法比使用内置的选择性粘贴选项更快

Also read: How to Convert Formulas to Values in Excel

使用VBA

如果删除公式并将其转换为结果值是您经常需要执行的操作,或者您需要对一个或多个工作簿中的多个工作表执行此操作,则可以考虑使用 VBA。

以下是您可以在不同场景中使用的一些 VBA 代码:

从特定范围中删除公式

'Code developed by Sumit Bansal from 
Sub RemoveFormulasInRange()
    Dim rng As Range
    Set rng = ActiveSheet.Range("D2:D11")
    rng.Value = rng.Value
End Sub

在上面的代码中,我将范围指定为 D2:D11。 您可以根据需要更改范围。

从整个工作表中删除公式

'Code developed by Sumit Bansal from 
Sub RemoveFormulasButKeepData()
    Dim ws As Worksheet
    Set ws = ActiveSheet
    ws.UsedRange.Value = ws.UsedRange.Value
End Sub

上面的代码从活动工作表的“已使用范围”中的所有单元格中删除公式,并将其替换为计算值。

从工作簿中的所有工作表中删除公式

'Code developed by Sumit Bansal from 
Sub RemoveFormulasButKeepData()
    Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
    ws.UsedRange.Value = ws.UsedRange.Value
Next ws
End Sub

上面的代码使用 For Each 循环遍历活动工作簿中的每个工作表,然后将使用的范围替换为单元格中的值。 这最终会删除所有公式,同时保持数据完整。

将此 VBA 代码放在哪里

按照以下步骤打开 VB 编辑器,放置 VBA 代码并运行:

  1. 转到功能区中的“开发人员”选项卡。 如果您没有看到“开发人员”选项卡,则需要启用它。 在“开发人员”选项卡中,单击“Visual Basic”图标。 或者,您可以按 ALT + F11 打开 VBA 编辑器。
单击“开发人员”选项卡中的 Visual Basic 图标
  1. 在 VBA 编辑器中,单击菜单中的“插入”选项,然后单击“模块”。 这会将新模块插入到您的 VBA 项目中。
为工作簿插入新模块
  1. 在编辑器中出现的新模块代码窗口中复制要使用的 VBA 代码。
将 vba 代码复制并粘贴到模块代码窗口中
  1. 单击保存图标或按 Ctrl + S 保存 VBA 模块。
  2. 关闭 VBA 编辑器

要运行宏代码,请按照以下步骤操作:

  1. 按住 ALT 键并按 F8 键。 这将打开宏对话框。
  2. 选择要运行的宏,然后单击“运行”按钮。
选择宏并单击运行按钮

警告:请记住,VBA 代码所做的更改是不可逆的。 因此,请确保您拥有数据的备份副本,以防万一 VBA 代码出现问题或者您稍后需要原始数据。

如果您想重复使用 VBA 代码,则必须将文件另存为启用宏的 Excel 文件(扩展名为 .XLSM)。

专家提示:如果您想在系统上的所有 Excel 工作簿中使用这些 VBA 代码中的任何一个,您应该将该代码保存在个人宏工作簿中。 一旦代码位于个人宏工作簿中,就可以按照我上面提到的步骤在任何工作簿上使用它。

因此,您可以使用以下一些方法来删除公式但将数据保留在 Excel 中。 如果这是您需要经常执行的操作,那么最好学习键盘快捷键来执行此操作。

或者,您可以使用内置的“选择性粘贴”选项来删除公式并将其替换为其值。

我希望本 Excel 教程对您有用。

推荐:将Excel中列转换为行


发表评论