有人可以帮助我使用Excel VBA通过单个按钮制作所选范围值的所有值绝对(或在范围内的每个单元格上应用绝对公式)吗?
A B C
5.119999886 -13.06999969 -13.14000034
-5.76999998 -12.52000046 -12.78999996
-5.88000011 -13.69999981 -14.13000011
5.46999979 -12.61999989 -12.48999977
答案 0 :(得分:1)
不完全是VBA,但如果需要可以记录。
选择您的数据范围,按Ctrl H(替换),在查找内容中添加“ - ”符号并全部替换。这将从所有数字中删除负号,它将变为绝对值。
注意:正如评论中提到的,OP同意这适用于他,因此张贴作为答案。
答案 1 :(得分:0)
您可以这样做:
Sub MakeAbsolute()
Dim c As Range
Dim rngToAbs As Range
'Set the worksheet name and range appropriately
Set rngToAbs = Worksheets("Sheet1").Range("A1:C2")
For Each c In rngToAbs
c.Value = Abs(c.Value)
Next c
End Sub
您需要将Sheet1
更改为工作表名称,并将A1:C2
更改为您想要获取绝对值的任何单元格范围。
希望代码很容易理解,但基本思想是我们将声明一个特定的范围,遍历该范围内的每个单元格,并通过应用{{}将该单元格的值更改为绝对值。 1}}功能。
答案 2 :(得分:0)
考虑:
Sub dural()
Dim rng As Range
Set rng = Range("A1:F10")
rng.Replace what:="-", lookat:=xlPart, replacement:=""
End Sub