|
见附件
Sub test()
Dim Str As String
Dim i As Long
Dim MyRng As Range
Dim Arr
Set MyRng = Application.InputBox(prompt:="输入单元格区域或者直接选取单元格", Type:=8)
If MyRng = "" Then Exit Sub
[I2] = MyRng.Value 'I2单元格值为选择单元格的区域
Str = Cells(MyRng.Column + 1, MyRng.Row)
With CreateObject("VBSCRIPT.REGEXP")
.Global = True
.Pattern = "[a-zA-Z]"
Str = .Replace(Str, "")
End With
spt = Split(Str, "/")
i = 0: ctns = VBA.Trim(spt(i)): [J2] = ctns: [N2] = ctns 'J2和N2单元格值
i = i + 1: Parcel = VBA.Trim(spt(i)): [M2] = Parcel 'M2单元格值
i = i + 1: GW = VBA.Trim(spt(i)): [K2] = GW 'K2单元格值
ReDim Arr(1 To 4)
For i = 1 To 4
Arr(i) = Cells(MyRng.Column + i + 1, MyRng.Row)
A = Split(Arr(i), "/")
B = Evaluate(A(0)) * A(1) / 1000000
CBM = (CBM + B)
Next
[L2] = CBM
[L2].NumberFormatLocal = "0.00_ "
[Q2] = [L2]
[Q2].NumberFormatLocal = "0.00_ "
End Sub |
|