- 帖子
- 4901
- 主題
- 44
- 精華
- 24
- 積分
- 4916
- 點名
- 148
- 作業系統
- Windows 7
- 軟體版本
- Office 20xx
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台北
- 註冊時間
- 2010-4-30
- 最後登錄
- 2025-6-19
               
|
5#
發表於 2010-9-29 18:17
| 只看該作者
本帖最後由 Hsieh 於 2010-9-29 22:33 編輯
- Private Sub CommandButton1_Click()
- r = Application.CountA(Columns("A")) + 1
- Sheets("sheet1").Cells(r, 1) = "買"
- Randomize
- Sheets("sheet1").Cells(r, 2) = Int((10 * Rnd) + 1)
- Buy_Sale
- End Sub
- Private Sub CommandButton2_Click()
- r = Application.CountA(Columns("A")) + 1
- Sheets("sheet1").Cells(r, 1) = "賣"
- Randomize
- Sheets("sheet1").Cells(r, 2) = Int((10 * Rnd) + 1)
- Buy_Sale
- End Sub
- Sub Buy_Sale()
- Dim Sale, Buy, A As Range, s&, k&
- Set Sale = CreateObject("Scripting.Dictionary")
- Set Buy = CreateObject("Scripting.Dictionary")
- For Each A In Range([A1], [A65536].End(xlUp))
- Select Case A.Value
- Case "買"
- If Sale.Count > 0 Then
- A.Offset(, 2) = Sale(s) - A.Offset(, 1)
- Sale.Remove s
- s = s + 1
- Else
- Buy(s) = A.Offset(, 1)
- A.Offset(, 2) = ""
- s = s + 1
- End If
- Case "賣"
- If Buy.Count > 0 Then
- A.Offset(, 2).Value = A.Offset(, 1) - Buy(k)
- Buy.Remove k
- k = k + 1
- Else
- Sale(k) = A.Offset(, 1)
- A.Offset(, 2) = ""
- k = k + 1
- End If
- End Select
- Next
- End Sub
複製代碼 |
|