【发布时间】:2018-02-11 16:21:32
【问题描述】:
我有一个 Excel 表格,包含不同的单位值,例如“百”和“千”。
现在,我想将所有“千”改为“百”,这意味着原始单元格值将 [cell] 乘以 10。
我用VBA解决了这个问题,我想知道如何用python解决这个问题?
VBA 像这样:
Sub changecell()
Dim rng As Range
Dim i, t
Set rng = Sheet1.Range("b3:c5")
For Each i In rng
t = t + 1
If Not i Is Nothing Then
If Right(i, 4) = "sand" Then
rng(t) = Left(i, Len(i) - 8) * 10 & "hundred"
End If
End If
Next
End Sub
【问题讨论】:
-
您不能将字符串相乘。按照您编写的方式,如果不进行大量拆分字符串和转换的工作,您将无法对数据进行任何数学计算或分析....您在想什么??????
-
在excel中,不用拆分字符串和转换类型也可以做到。你可以试试。
-
其实在我的vba中,我用的是Left(i, Len(i) - 8),这个纯数字,可以相乘
-
愚蠢的我......我知道得更好,但我实际上检查过......浪费了我的时间......不,你不能像你所拥有的那样直接对单元格内容进行数学运算
-
再次......你在想什么????您必须求助于提取子字符串。 .....为什么不在B和C之间插入一列并将“百”放入该列