|
增加一个判断
- Sub Macro1()
- arr = Range("a1").CurrentRegion
- n = UBound(arr): x = [d1]
- Union([e6], [e8]) = ""
- If Range(Cells(n - x + 1, 1), Cells(n - 1, 1)).Find(arr(n, 1)) Is Nothing Then Exit Sub
- For i = n - x + 1 To n
- If arr(i, 1) = arr(n, 1) Then s = i: Exit For
- Next
- s2 = s + 1
- Do
- x1 = arr(s, 1): x2 = arr(s + 1, 1)
- yh = yh + x1 + x2 + Abs(x1 - x2) '右边和
- yc = yc + x1 + x2 - Abs(x1 - x2) '右边差
- y = y + 1 '右边计数
- s = s + 2
- Loop Until s >= n
- Do
- x1 = arr(s2, 1): x2 = arr(s2 + 1, 1)
- zh = zh + x1 + x2 + Abs(x1 - x2) '左边和
- zc = zc + x1 + x2 - Abs(x1 - x2) '左边差
- z = z + 1 '左边计数
- s2 = s2 + 2
- Loop Until s2 >= n
- [e6] = (zh + yh) / (y + z)
- [e8] = (zc + yc) / (y + z)
- End Sub
复制代码 |
评分
-
查看全部评分
|