連續 & 不連續 之陣列處理方式ex:1~3,5,7,9~11
- 帖子
- 4901
- 主題
- 44
- 精華
- 24
- 積分
- 4916
- 點名
- 142
- 作業系統
- Windows 7
- 軟體版本
- Office 20xx
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台北
- 註冊時間
- 2010-4-30
- 最後登錄
- 2026-7-16
                
|
- Sub ex()
- Dim Ay()
- ar = Array(1, 2, 3, 5, 7, 9, 10, 11, 13, 14, 15) '不連續陣列
- For i = 0 To UBound(ar) - 1 ''不處理最後元素
- j = i
- x = ar(j)
- Do Until ar(j) + 1 <> ar(j + 1)
- j = j + 1
- If j = UBound(ar) Then Exit Do
- Loop
- y = ar(j)
- i = j
- ReDim Preserve Ay(s)
- Ay(s) = IIf(x = y, x, x & "~" & y)
- s = s + 1
- Next
- If j = UBound(ar) - 1 Then '處理最後元素
- ReDim Preserve Ay(s)
- Ay(s) = ar(UBound(ar))
- End If
- MsgBox Join(Ay, ",")
- End Sub
複製代碼 回復 7# PKKO |
|
|
學海無涯_不恥下問
|
|
|
|
|