|
请给解释一下这段代码。
谢谢了
Sub FindChar()
Dim Sp() As String
Dim iRow As Integer
Dim iCnt As Integer, jCnt As Integer
iRow = Range("A65536").End(xlUp).Row
For iCnt = 1 To iRow
If Cells(iCnt, 1).Value <> "" Then
Sp = Split(Cells(iCnt, 1).Value, " ")
For jCnt = LBound(Sp) To UBound(Sp)
If Right(Sp(jCnt), 1) = "寸" Then
Cells(iCnt, 2).Value = CDbl(Left(Sp(jCnt), Len(Sp(jCnt)) - 1))
End If
Next
End If
Next
End Sub
本帖最后由 cbg2008 于 2012-9-8 20:53 编辑
- Sub FindChar()
- Dim Sp() As String
- Dim iRow As Integer
- Dim iCnt As Integer, jCnt As Integer
- iRow = Range("A65536").End(xlUp).Row 'A列最后一个非空单元格所在的行
- For iCnt = 1 To iRow '从第一行开始循环到最后一个非空单元格
- If Cells(iCnt, 1).Value <> "" Then '如果A列单元格的值不为空
- Sp = Split(Cells(iCnt, 1).Value, " ") '将单元格的值以空格为间隔符分割成一维数组
- For jCnt = LBound(Sp) To UBound(Sp) '循环该一维数组中的每一个元素
- If Right(Sp(jCnt), 1) = "寸" Then '如果有右边最后一个字是“寸”的,刚提取寸左边的数字转化为double型的,放到B列对应行的单元格中
- Cells(iCnt, 2).Value = CDbl(Left(Sp(jCnt), Len(Sp(jCnt)) - 1))
- End If
- Next
- End If
- Next
- End Sub
复制代码
|
|