返回列表 上一主題 發帖

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

回復 55# c_c_lai

所以替換後變成下面這樣??

    Sub RecordPrice(TG As String)
    Dim WR As Long

    If Range("A1") < 1 Then Exit Sub
    '  WR = Range("A1").End(xlDown).Row + 1
    WR = Range(TG).End(xlDown).Row + 1           '  修改成以觸發之欄位為判斷基點

    '  ActiveWindow.ScrollRow = WR - 5           '  只顯示最新幾筆資料

    Cells(WR, 1).NumberFormatLocal = "hh:mm:ss"
   
    Range(Left(TG, Len(TG) - 1) & WR) = Range(TG)
    Range(Left(TG, Len(TG) - 1) & WR).Offset(, -1) = Range(TG).Offset(, -1)
    End If
End Sub

TOP

回復 54# 藍天麗池
替換掉
  1.     '  If WR = 3 Then  '  總量有異動時才記錄
  2.     '      Cells(WR, 1).Resize(, 400) = [A2:OJ2].Value
  3.     '  Else
  4.        Range(Left(TG, Len(TG) - 1) & WR) = Range(TG)                            '  可處裡到 AA 以後的欄位
  5.        '  Range(Left(TG, 3) & WR) = Range(TG)                                   '  只能處裡到 A ~ Z
  6.        Range(Left(TG, Len(TG) - 1) & WR).Offset(, -1) = Range(TG).Offset(, -1)  '  可處裡到 AA 以後的欄位
  7.       '  Range(Left(TG, 3) & WR).Offset(, -1) = Range(TG).Offset(, -1)          '  只能處裡到 A ~ Z
  8.     '   End If
複製代碼
可處裡到 AA 以後的欄位,這是已開始動工的前置準備。

TOP

回復 53# c_c_lai

沒有,全部都是有變動才寫入,那個是之前別人幫我寫的,可以拿掉,直接刪除就好嗎??

TOP

回復  c_c_lai


    修改之後,第一次變動會全部往下寫,為什麼會這樣??
藍天麗池 發表於 2016-4-9 09:04

你不是第一次 (WR = 3) 就要全部寫入?

TOP

回復 50# c_c_lai


    C大,你先忙,我的不急,你肯幫我就感謝不及了,所以你忙完你的事再幫我也不遲,謝謝

TOP

本帖最後由 藍天麗池 於 2016-4-9 09:18 編輯

回復 49# GBKEE

我測試的方式是直接手動輸入量,還是說手動輸入的方式會不準確??

TOP

回復 47# 藍天麗池
100 當然都有其它各自對應的 100  『 時間    股票名稱    成交    總量』,
事前標題設定工作是無法全由電腦來處理個別之 DDE 匯入公式的。
泰國人有句名言「在尖尖」,意思是「慢慢來」,我正在思考來
輕鬆處理它。

TOP

本帖最後由 GBKEE 於 2016-4-9 09:14 編輯

回復 44# 藍天麗池
今天沒營業,請問測試方式

再解釋一下,程式的邏輯
檔案開啟時 定義了Sheets("RTD")所有總量Dee公式的儲存格
  1. Private Sub Workbook_Open()
  2. With Sheets("RTD")
  3. '''
  4. .Names.Add xRng_Name, xRng  ''名稱定義:Sheets("RTD")所有各股總量Dee公式的儲存格
  5. '''
複製代碼
Sheets("RTD")工作表上任何有公式儲存格值有變動,啟動Sheets("RTD")的Worksheet_Calculate事件
  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.         For Each E In Me.Names
  8.             If E.Name Like "*TotalVolume*" Then   '各股總量的名稱
  9.                 If Range(E.Name) > 0 Then                 '總量>0
  10.                     With Cells(Rows.Count, Range(E.Name).Column).End(xlUp)  ''總量名稱所在的最底列往上到有資料的儲存格
  11.                             If .Row = 2 Or .Row > 2 And .Value <> Range(E.Name).Value Then '(各股總量有變動)
  12.                                 '******************************************
  13.                                 '最底列往上有資料的儲存格<>'總量的值
  14.                                 .Offset(1).Cells(1, -2).Resize(, 4) = Range(E.Name).Cells(, -2).Resize(, 4).Value
  15.                                 '******************************************
  16.                             End If
  17.                     End With
  18.                 End If
  19.             End If
  20.         Next
  21. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 45# c_c_lai


    修改之後,第一次變動會全部往下寫,為什麼會這樣??

TOP

回復 45# c_c_lai


    可是C大,我#37的那個要怎麼修改??真的要打100個??

TOP

        靜思自在 : 天上最美是星星,人生最美是溫情。
返回列表 上一主題