- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
2#
發表於 2012-8-14 09:43
| 只看該作者
回復 1# cmo140497
試試看- Sub Ex()
- Dim Rng As Range, i As Integer, S As Integer
- Dim Ar '() <-動態陣列
- With Sheets("sheet3")
- Set Rng = .Range("b14:o23")
- For i = Application.Min(Rng) To Application.Max(Rng)
- Debug.Print i & ":" & Application.CountIf(Rng, i)
- If Application.CountIf(Rng, i) > 0 Then
- Ar = Ar & IIf(Ar <> "", "," & i, i) '動態陣列時 註解此行程式碼(不需此行程式碼)
- 'ReDim Preserve Ar(S)
- 'Ar(S) = "" & i
- 'S = S + 1
- End If
- Next
- Ar = Split(Ar, ",") '動態陣列時 註解此行程式碼(不需此行程式碼)
- .Shapes(1).ControlFormat.List = Ar
- End With
- End Sub
複製代碼 |
|