- Sub xlh_蓝桥玄霜()
- Dim i&, Arr1(), Arr2(), Arr, gs
- Dim n%, aa, je, le%, t$, bb$, ks, js, n1%, ftje, j&, m&, lj
- Application.ScreenUpdating = False
- Sheet2.Activate
- Arr = [a1].CurrentRegion
- For i = 2 To UBound(Arr)
- n = Len(Arr(i, 1)) - Len(Replace(Arr(i, 1), "-", ""))
- If n = 3 Then
- aa = Split(Arr(i, 1), "-")
- je = Arr(i, 2): lj = 0
- le = Len(aa(2))
- t = Left(aa(2), 1)
- bb = aa(0) & "-" & aa(1) & "-"
- ks = Val(Right(aa(2), le - 1))
- js = Val(Right(aa(3), le - 1))
- n1 = js - ks
- ftje = Format(je / (n1 + 1), "0.00")
- For j = ks To js
- m = m + 1
- ReDim Preserve Arr1(1 To m)
- ReDim Preserve Arr2(1 To m)
- gs = Application.Rept("0", le - 1)
- Arr1(m) = bb & t & Format(j, gs)
- If j <> js Then
- Arr2(m) = ftje: lj = lj + ftje
- Else
- Arr2(m) = je - lj
- End If
- Next
- Else
- m = m + 1
- ReDim Preserve Arr1(1 To m)
- ReDim Preserve Arr2(1 To m)
- Arr1(m) = Arr(i, 1)
- Arr2(m) = Arr(i, 2)
- End If
- Next
- [d2].Resize(m, 1) = Application.Transpose(Arr1)
- [e2].Resize(m, 1) = Application.Transpose(Arr2)
- Application.ScreenUpdating = True
- End Sub
复制代码 |