我在Excel中对VBA很陌生,我已经试过寻找我的问题了。使用当前的单元格值来计算并在单元格中替换
我想根据单元格的值计算答案,并在宏执行时让计算值替换当前值。例如,如果A2的初始值为30,我也想用A2 = 3代替A2,以使A2读取90作为其新值。
有没有办法做到这一点,而不必复制和粘贴其他地方的所有东西?
感谢您的任何帮助。
我在Excel中对VBA很陌生,我已经试过寻找我的问题了。使用当前的单元格值来计算并在单元格中替换
我想根据单元格的值计算答案,并在宏执行时让计算值替换当前值。例如,如果A2的初始值为30,我也想用A2 = 3代替A2,以使A2读取90作为其新值。
有没有办法做到这一点,而不必复制和粘贴其他地方的所有东西?
感谢您的任何帮助。
尝试类似这样的事情。首先,确保您已选择至少一个单元格,然后从宏菜单运行宏:
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的字符串。感谢以前的快速反应。 – user2653797
我做了一个编辑(可能在你第一次尝试之后)在公式中包括'“=”'。这应该解决它:) –
谢谢!这是完美的。希望你有美好的一天;希望你今天过得很开心! – user2653797
是的。这是可行的。你可以使用'Worksheet_Change'事件,但这可能更麻烦。我会提出一个不同的方法,需要你运行宏。 –