返回列表 上一主題 發帖

價格紀錄的語法有寫錯嗎??

回復 83# 藍天麗池
回復 85# GBKEE
附上 股票10A.rar 以及 股票10B.rar 兩個檔案;
股票10A.rar 是我的 (Worksheet_Change()) 程式,
股票10B.rar 則是 GBKEE 大大的 (Worksheet_Calculate())
程式,且加入了 非開盤時間的考量。 A、B 是兩個
不同的程式模組,明天測試完畢向我倆報告心得結果。
股票10A.rar (21.88 KB)
股票10B.rar (23.44 KB)

TOP

回復 84# c_c_lai
39帖  補上非營業時間不執行程式
  1. Private Sub Worksheet_Calculate()
  2.         Dim Rng As Range, E As Variant
  3.         On Error Resume Next ' 檔案開啟時 DEE傳回錯誤值
  4.         Set Rng = UsedRange.Cells.SpecialCells(xlCellTypeFormulas, xlErrors)
  5.         If Not Rng Is Nothing Then Exit Sub
  6.         On Error GoTo 0 '開盤不再處理程式碼的錯誤
  7.         If Time < #9:00:00 AM# Or Time > #1:31:00 PM# Then Exit Sub '非營業時間
  8.         For Each E In Me.Names
  9.             If E.Name Like "*TotalVolume*" Then   '總量的名稱
  10.                 If Range(E.Name) > 0 Then
  11.                     With Cells(Rows.Count, Range(E.Name).Column).End(xlUp)  ''總量名稱所在的最底列往上到有資料的儲存格
  12.                             If .Row = 2 Or .Row > 2 And .Value <> Range(E.Name).Value Then
  13.                                 .Offset(1).Cells(1, -2).Resize(, 4) = Range(E.Name).Cells(, -2).Resize(, 4).Value
  14.                             End If
  15.                     End With
  16.                 End If
  17.             End If
  18.         Next
  19. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復  c_c_lai

上圖示股票10的測試結果,黑框的部分沒有往下複製,紅框的部分為一組(B2-E2、F2-I2...等 ...
藍天麗池 發表於 2016-4-10 07:47

TOP

回復 82# c_c_lai


    C大不急,你先忙

TOP

回復 81# 藍天麗池
明白了,有事出去一下 (買無糖豆漿)。
回頭再修正。

TOP

回復 78# c_c_lai

上圖示股票10的測試結果,黑框的部分沒有往下複製,紅框的部分為一組(B2-E2、F2-I2...等等),是總量變動後要往下紀錄的欄位

TOP

回復 77# c_c_lai


    C大,早阿,這麼早就起床動腦筋,辛苦了
74#在麻煩你修改一下,我等等來測試

TOP

[版主管理留言]
  • GBKEE(2016/4/10 07:34): 星期一營業前打開檔案試試看

本帖最後由 藍天麗池 於 2016-4-10 07:21 編輯

回復 76# GBKEE

可是我只有手動變更台積電的總量,為什麼其他的也會往下寫??
不是應該只又台積電會往下寫嗎??

TOP

回復 76# GBKEE
我有留意到 "名稱定義" 的定義,
  1.   : First_Aaddres : "$D$2"                               : String
  2.   : xRng_Name     : "TotalVolume2330"                    : String
  3.   : xRng          : "XQTISC|Quote!'2330.TW-TotalVolume'" : Range/Range
  4.   .Names.Add xRng_Name, xRng       '  名稱定義: 所有總量的 DDE 公式的儲存格
複製代碼
以及
  1.   With Cells(Rows.Count, Range(E.Name).Column).End(xlUp)
  2.   '  總量名稱所在的最底列往上到有資料的儲存格
  3.       If .Row = 2 Or .Row > 2 And .Value <> Range(E.Name).Value Then       '  (各股總量有變動)
  4.       '  最底列往上有資料的儲存格 <> 總量的值
  5.           .Offset(1).Cells(1, -2).Resize(, 4) = Range(E.Name).Cells(, -2).Resize(, 4).Value
  6.       End If
  7.   End With
複製代碼
的作業處裡。
Good Idea!
謝謝囉!

TOP

回復 73# 藍天麗池
在第三列 (含) 以下皆為空白,於任何總量之第二攔
不做任何修改按下 ENTER,你會看到第三欄自動將
第二攔的值複製 (未經修正時)。

TOP

        靜思自在 : 我們要做好社會的環保,也要做好內心的環保。
返回列表 上一主題