- 帖子
- 967
- 主題
- 0
- 精華
- 0
- 積分
- 1001
- 點名
- 0
- 作業系統
- WIN XP
- 軟體版本
- OFFICE 2003
- 閱讀權限
- 50
- 性別
- 男
- 來自
- 台北
- 註冊時間
- 2010-11-29
- 最後登錄
- 2022-5-17
 
|
2#
發表於 2012-4-18 22:03
| 只看該作者
回復 1# cudui - Sub yy()
- c = Array(1, 2, 3, 4, 5, 11, 14)
- With Sheets("加權歷史行情原始檔")
- .[A9:E9].Copy Sheets("加權歷史行情-排序後").[A1]
- .[K9].Copy Sheets("加權歷史行情-排序後").[F1]
- .[N9].Copy Sheets("加權歷史行情-排序後").[G1]
- n = .[a65536].End(xlUp).Row
- a = .Range(.Cells(1, 1), .Cells(n, 14))
- ReDim arr(1 To UBound(a), 1 To 7)
- x = 1
- For j = 1 To UBound(a)
- For i = 1 To 7
- If Mid(.Cells(j, 1), 4, 1) <> "/" Then
- GoTo 123
- Else: arr(x, i) = a(j, c(i - 1))
- End If
- Next i
- x = x + 1
- 123
- Next j
- End With
- With Sheets("加權歷史行情-排序後")
- .Range([A2], [G2].End(xlDown)) = ""
- .[A2].Resize(j - 1, 7) = arr
- .[A1].Sort Key1:=.[A1], Order1:=xlAscending, Header:=xlGuess
- .Range([B2], [G2].End(xlDown)).NumberFormatLocal = "#,##0.00"
- End With
- End Sub
複製代碼 |
|