excel求教高手,我想把3L中的L换成*0.5即.3*0.5并且得出结果1.5,类似的还有几百处,请教大神指点下简便方
发布网友
发布时间:2022-11-08 19:02
我来回答
共3个回答
热心网友
时间:2023-11-11 20:35
如果你的数据在C17,在D17输入下面这个公式
=VALUE(LEFT(C17,LEN(C17)-1))*0.5
如果在其它地方,自己换单元格位置吧。
还是用下面这个VBA吧。这个就不用加辅助列了。可以弄个控件,一点控件就OK了。
Public Sub TEST()
Dim Arr
Dim i As Long, j As Long
Arr = Range(Range("E4"), Range("AB65536").End(xlUp))
For i = 1 To UBound(Arr, 1)
For j = 1 To UBound(Arr, 2)
If Arr(i, j) Like "*L" Then
Arr(i, j) = Val(VBA.Replace(Arr(i, j), "L", "")) * 0.5
End If
Next
Next
Range(Range("E4"), Range("AB65536").End(xlUp)) = Arr
End Sub
设好VBA的文件已经用邮件发给你了。rufeng_00
热心网友
时间:2023-11-11 20:35
我也只有找到一种较笨的方法,希望对你有帮助:
如果所有的数据都是L在最后的话,你可以使用如下公式:=VALUE(LEFT(A1,LEN(A1)-1))*0.5
这里假设A1单元格中的数据是3L,所以在另一个单元格中输入的公式意思是先取出最左边的数据,再转换成数字格式后乘以0.5追问我试了很方便,不过还有一些数据没有L(即有些列中有的有L有的没有L,有什么公式可以吗?
热心网友
时间:2023-11-11 20:36
如果都是3L,那就替换一下了,3L换成=3*0.5追问不都是3L还有0。004L,0.0005L等
追答你可以用SUBSTITUTE来替换。
=VALUE(SUBSTITUTE(A1,"L",""))*0.5