返回列表 上一主題 發帖

[發問] 請問該如何自動記錄加總

[發問] 請問該如何自動記錄加總

本帖最後由 leefing 於 2012-2-9 00:32 編輯

如題

當單量>=10時,判斷     成交=買進       記在  空   那一欄
                                , 判斷      成交=賣出      記在  多   那一欄
                                ,判斷     成交同時>買進and賣出  記在     多    那一欄
                              ,判斷       成交同時<買進and賣出   記在    空    那一欄

每次出現  就累加上次,而不會取代掉

那該如何解決呢?
看盤1.rar (12.36 KB)

可以了!!!!!!!!實在是太謝謝了~~~~~

TOP

回復 28# appr

只放27#的程式碼
放在工作表模組,如下圖

還有問題的話,請上傳檔案

TOP

不好意思!!!又發生問題了!!!

一開始測試是好的重新關閉後 ,重新來過也把後來的模組放進來

結果"Target" 被顯示 不正確的外部程序?

是我一開始的巨集編輯錯誤嗎?

有點搞混了~"~

TOP

回復 26# appr

工作表模組
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2. Set RngA = Range("A2:A4")
  3. Set RngB = Range("B2:B4")
  4. Set RngCA = Intersect(Target, RngA)
  5. Set RngCS = Intersect(Target, RngB)
  6. If Not RngCA Is Nothing Then
  7.    RngCA.Offset(0, 2) = RngCA.Offset(0, 2) + RngCA.Value
  8.    RngCA.Value = ""
  9. End If
  10. If Not RngCS Is Nothing Then
  11.    RngCS.Offset(0, 1) = RngCS.Offset(0, 1) - RngCS.Value
  12.    RngCS.Value = ""
  13. End If
  14. End Sub
複製代碼

TOP

想在請問一個問題!!!

如果我要連A3或者是A4也是一樣的做法!!那是要一樣複製

然後這個工作表模組A2改成A3  C2 改成 C3 嗎?

TOP

是的!!這就是我想要做的部分!!!真的很感謝你!!

真不好意思還讓你用這種方法來呈現出來~"~

TOP

回復 23# appr

1.gif

工作表模組
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2. If Target.Address = "$A$2" And [A2] <> "" Then
  3.    [C2] = [C2] + [A2]
  4.    [A2] = ""
  5. End If
  6. If Target.Address = "$B$2" And [B2] <> "" Then
  7.    [C2] = [C2] - [B2]
  8.    [B2] = ""
  9. End If
  10. End Sub
複製代碼

TOP

本帖最後由 appr 於 2012-2-19 22:43 編輯

不好意思!!!想請教各位一下,我自己有在另外發表一篇主題!!不過我在這邊有看到好像跟我類似的

所以想請教一下!!我的這個問題的做法也是要用SetLinkOnData嗎?

我的問題是
             A1         A2        A3
架構: 進貨     退貨     庫存
                                       10

我在進貨的時候是從A1底下輸入

而公式就是=SUM(A3-A1) 那就會出現目前的庫存量

但如果我不小心把進貨的數值Delete 那 庫存的值就會消失!!! 但我不知道說 , 有哪個公式可以自動紀錄A3庫存的數值嗎???

還是說可以把程式關掉的時候自動更新庫存量 以及 把 A1的 數值給清除

TOP

回復 20# leefing

本人並無DDE實際經驗,依據kobo的經驗
直接於開檔與關檔使用SetLinkOnData方法就可達到自動化了
  1. Sub Catch_DDE()
  2. '單量10,然後成交=買進,所以"空"下面那一格出現10
  3. If IsError([J12]) Then Exit Sub  '單量連結錯誤就停止計算
  4. If [J12] >= 10 Then  '單量10以上執行
  5.    If [D12] = [F12] Then [U12] = [U12] + [J12]
  6.    If [E12] = [F12] Then [T12] = [T12] + [J12]
  7. End If
  8. End Sub

  9. Sub auto_open()
  10. ThisWorkbook.SetLinkOnData "YES|DQ!EXFB2.Volume", "Catch_DDE"  '啟動SetLinkOnData方法
  11. End Sub

  12. Sub auto_close()
  13. ThisWorkbook.SetLinkOnData "YES|DQ!EXFB2.Volume", ""   '關閉SetLinkOnData方法
  14. End Sub
複製代碼
學海無涯_不恥下問

TOP

        靜思自在 : 【時間成就一切】時間可以造就人格,可以成就事業,也可以儲積功德。
返回列表 上一主題