【问题标题】:Use current cell value to calculate and replace in cell使用当前单元格值计算和替换单元格
【发布时间】:2013-08-06 10:12:59
【问题描述】:

我对 Excel 中的 VBA 非常陌生,我已经尝试过搜索我的问题。

我正在尝试根据单元格的值计算答案,并在执行宏时让计算值替换当前值。例如,如果 A2 的初始值为 30,我也想将 A2 替换为 =A2*3 ,以便 A2 读取 90 作为其新值。

有什么方法可以做到这一点,而不必先将所有内容复制并粘贴到其他地方?

感谢您的帮助。

【问题讨论】:

  • 是的。这是可行的。您可以使用Worksheet_Change 事件,但这可能更麻烦。我将提出一种需要您运行宏的不同方法。

标签: excel vba


【解决方案1】:

试试这样的。首先,确保您至少选择了一个单元格,然后从宏菜单运行宏:

Sub MultiplyBy30()
Dim rng as Range
Dim cl as Range

Set rng = Range(Selection.Address)

For each cl in rng.Cells
    If IsNumeric(cl.Value) And Len(cl.Value) > 0 Then
    cl.Formula = "=" & cl.Value & "*30"
    End If
Next

End Sub

【讨论】:

  • 现在它显示的是 123*30 而不是字符串,而不是值 3690。感谢您之前的快速响应。
  • 我进行了编辑(可能在您第一次尝试之后)以在公式中包含"="。那应该可以解决它:)
  • 谢谢!这是完美的。我希望你有一个美好的一天!
猜你喜欢
  • 1970-01-01
  • 2023-02-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-03
相关资源
最近更新 更多