在Excel中获取值后自动删除公式?
在excel中可以做这样的事情吗在Excel中获取值后自动删除公式?,excel,excel-formula,vba,Excel,Excel Formula,Vba,在excel中可以做这样的事情吗 我一直在搜索许多文章和视频 所有的人都告诉我用手来做 因此,我想知道是否有任何方法可以立即删除公式并保留值?从而消除新旧价值之间的联系 比如,我不知道,也许=sum(A1:A5,del) 类似这样的内容?有没有办法立即删除公式并保留值 否 但是,您可以使用。这是一个非常简单的代码,它将检查范围的ActiveSheet(“A1”)的值是否大于0。如果是,则将单元格另存为值,公式将消失。请注意,一旦运行代码,就不能使用“撤消”: Sub DeleteValue()
我一直在搜索许多文章和视频 所有的人都告诉我用手来做 因此,我想知道是否有任何方法可以立即删除公式并保留值?从而消除新旧价值之间的联系 比如,我不知道,也许=sum(A1:A5,del)
类似这样的内容?有没有办法立即删除公式并保留值 否 但是,您可以使用。这是一个非常简单的代码,它将检查范围的ActiveSheet(“A1”)的值是否大于0。如果是,则将单元格另存为值,公式将消失。请注意,一旦运行代码,就不能使用“撤消”:
Sub DeleteValue()
With ActiveSheet
If .Range("A1").Value2 <> 0 Then
.Range("A1").Value2 = .Range("A1").Value2
End If
End With
End Sub
Sub-DeleteValue()
使用ActiveSheet
如果.范围(“A1”).值2 0,则
.Range(“A1”).Value2=.Range(“A1”).Value2
如果结束
以
端接头
有没有办法立即删除公式并保留值
否
但是,您可以使用。这是一个非常简单的代码,它将检查范围的ActiveSheet(“A1”)的值是否大于0。如果是,则将单元格另存为值,公式将消失。请注意,一旦运行代码,就不能使用“撤消”:
Sub DeleteValue()
With ActiveSheet
If .Range("A1").Value2 <> 0 Then
.Range("A1").Value2 = .Range("A1").Value2
End If
End With
End Sub
Sub-DeleteValue()
使用ActiveSheet
如果.范围(“A1”).值2 0,则
.Range(“A1”).Value2=.Range(“A1”).Value2
如果结束
以
端接头
是否自动执行?没有
手动?对
选择要删除公式并仅保留值的单元格区域,复制它们,然后右键单击->粘贴特殊->值(V)
这将用公式计算的单元格值(复制时)替换单元格公式。是否自动?没有
手动?对
选择要删除公式并仅保留值的单元格区域,复制它们,然后右键单击->粘贴特殊->值(V)
这将用公式计算的单元格值替换单元格公式(复制时)。例如,我们在C列中输入项目。如果我们在C单元格中输入公式,我们希望公式自动转换为值。在工作表代码区域中输入以下事件宏:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rInt As Range, r As Range, C As Range
Set C = Range("C:C")
Set rInt = Intersect(Target, C)
If rInt Is Nothing Then Exit Sub
Application.EnableEvents = False
For Each r In rInt
If r.HasFormula Then
r.Value = r.Value
End If
Next r
Application.EnableEvents = True
End Sub
由于它是工作表代码,因此安装和自动使用非常容易:
必须启用宏才能工作例如,我们在C列中输入项目。如果我们在C单元格中输入公式,我们希望公式自动转换为值。在工作表代码区域中输入以下事件宏:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rInt As Range, r As Range, C As Range
Set C = Range("C:C")
Set rInt = Intersect(Target, C)
If rInt Is Nothing Then Exit Sub
Application.EnableEvents = False
For Each r In rInt
If r.HasFormula Then
r.Value = r.Value
End If
Next r
Application.EnableEvents = True
End Sub
由于它是工作表代码,因此安装和自动使用非常容易:
必须启用宏才能工作使用纯Excel是不可能的。然而,如果你点击左下角的“录制宏”按钮,你会看到一个全新的世界,在那里这是很容易实现的。“我一直在搜索许多文章和视频,所有这些都告诉我用手来做”-你能参考至少一个视频/书籍告诉你这一点吗?我很想看。我是StarckOverflow的新手,现在找不到回复功能。希望你能看到我的relyWell,视频很不错。如果那个家伙学会了VBA,可能会永远改变他的生活。用纯Excel是不可能的。然而,如果你点击左下角的“录制宏”按钮,你会看到一个全新的世界,在那里这是很容易实现的。“我一直在搜索许多文章和视频,所有这些都告诉我用手来做”-你能参考至少一个视频/书籍告诉你这一点吗?我很想看。我是StarckOverflow的新手,现在找不到回复功能。希望你能看到我的relyWell,视频很不错。如果那个家伙学会了VBA,它可能会永远改变他的生活。好吧,把它加入到一个工作表更改事件中,你就在那里了。@Glitch_Doctor-在某种程度上你是对的,但我想为一个从未编码过的人显示事件是相当困难的。你是对的,我只是在回答最初的问答时留下了那个专栏,以防它对OP产生误导。这仍然是一个很好的答案@VityataWell,把它加入到工作表更改事件中,你就在那里了。@Glitch_Doctor-在某种程度上你是对的