Board logo

標題: 如何只更新當日欄位VBA [打印本頁]

作者: jerrystock    時間: 2014-4-20 21:00     標題: 如何只更新當日欄位VBA

本帖最後由 jerrystock 於 2014-4-20 21:03 編輯

請問如何複製D1~D3欄位到E1~E3欄位的數據.但是隔日就不複製昨日的D1~D3欄位的數據
因為昨日D1~D3來到隔日就會更新數據.但E1~E3不更新只記錄往後新增出來的D欄資料
像是明日新增出來的D5與D6欄位複製到E5欄與E6欄.以此類推 .不是複製全部D欄.VBA
例如:今日
             D            E
2          10.5     10.5
3          20         20
4          12         12
明日
5         40          ?
6         35          ?
謝謝

附檔[attach]18097[/attach]
作者: owen06    時間: 2014-4-21 08:21

回復 1# jerrystock


    像這樣嗎?
作者: jerrystock    時間: 2014-4-21 14:02

本帖最後由 jerrystock 於 2014-4-21 14:07 編輯

回復 2# owen06
感謝大大百忙中回復我的問題  
原則上是這樣沒錯  如果欄位只有E欄跟F欄.F欄只更新E欄新增部分數據.不參考(日期)與(今日新增)字串
只有2欄數據.F欄只更新E欄新增部分 這樣子可以嗎?  謝謝

[attach]18104[/attach]
作者: Hsieh    時間: 2014-4-21 14:45

回復 3# jerrystock
40與50的數值依據在哪?
看不出E欄與F欄有甚麼關連?
作者: jerrystock    時間: 2014-4-21 15:13

本帖最後由 jerrystock 於 2014-4-21 15:17 編輯

回復 4# Hsieh
E欄是當日股價會更新每日不同
F欄是買進的股價是固定不變
E5=40元
E6=35元
F欄就複製E5與E6就是當日買進的價錢
所以兩欄之前數據不會同步.新增數據就是當日買進價錢所以就新增到F5與F6
小弟描述不好 請勿見怪  謝謝

[attach]18105[/attach]
作者: Hsieh    時間: 2014-4-21 16:35

  1. Sub ex()
  2. Dim Rng As Range, A As Range
  3. With 工作表1
  4. Set Rng = Range([F2], .Cells(.Rows.Count, "E").End(xlUp).Offset(, 1))
  5. If Application.CountBlank(Rng) > 0 Then
  6. For Each A In Rng.SpecialCells(xlCellTypeBlanks)
  7.   A = A.Offset(, -1).Value
  8. Next
  9. End If
  10. End With
  11. End Sub
複製代碼
回復 5# jerrystock
作者: owen06    時間: 2014-4-21 16:47

回復 5# jerrystock


    醬咧?
作者: jerrystock    時間: 2014-4-21 19:49

回復 6# Hsieh

感謝Hsieh大大解決我的問題 也感謝owen06大大不惜辛勞為我找答案
不過應用上Hsieh大大的程式碼,個人環境接受度範圍較廣
owen06大大的程式碼,用在當下可以解決,但環境有些改變後就不能使用了
Hsieh大大的程式碼,環境改來改去都還能使用
這是小弟淺見,小弟完全不懂VBA,請大大見諒
感謝兩位大大幫助  謝謝兩位^^




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)