|
本帖最后由 戒不掉心中的瘾 于 2014-1-15 00:04 编辑
Sub test()
Dim arr, brr(), reg, i, str, n, x
Set reg = CreateObject("vbscript.regexp")
arr = Range("a1:a" & [a65536].End(xlUp).Row)
For i = LBound(arr) To UBound(arr)
With reg
.Global = True
.Pattern = "\d+"
Set str = .Execute(arr(i, 1))
x = x + 1
ReDim Preserve brr(1 To x)
If str.Count > 1 Then
brr(x) = Val(str(0)) * Val(str(1))
ElseIf str.Count > 0 Then
.Pattern = "\d+[g|G]\b"
Set str = .Execute(arr(i, 1))
If str.Count > 0 Then brr(x) = Val(str(0))
End If
End With
Next
Range("b1").Resize(UBound(brr), 1) = Application.Transpose(brr)
End Sub
|
|