- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
116#
發表於 2016-4-12 10:05
| 只看該作者
本帖最後由 GBKEE 於 2016-4-13 08:42 編輯
回復 114# c_c_lai - Option Explicit
- Private Sub Worksheet_Calculate()
- Dim Rng As Range, cts As Long
- If Time < #8:30:00 AM# Or Time > #1:31:00 PM# Then Exit Sub ' 非營業時間
- On Error GoTo ER:
- For cts = 4 To Columns.Count Step 4
- Set Rng = Cells(2, cts)
- With Cells(Rows.Count, cts).End(xlUp)
- ' 總量名稱所在的最底列往上到有資料的儲存格
- If .Row = 2 Or .Row > 2 And .Value <> Rng.Value Then ' (各股總量有變動)
- .Offset(1, 1).NumberFormatLocal = "hh:mm:ss" ' 設定儲存格格式 (時間)
- .Offset(1).Cells(1, -1).Resize(, 4) = Rng.Cells(, -1).Resize(, 4).Value
- End If
- End With
- Next cts
- ER:
- Stop
- MsgBox "錯誤值 " & Err & VBLF & " cts=" & cts & " - " & Rng.Address & " 最後的總量是工作表的最右欄 -> .Resize(, 4).Value :超出工作表範圍" Resume
- End Sub
複製代碼 |
|