返回列表 上一主題 發帖

如何更改其他股號,要哪些步驟?

回復 1# cfuxiong
那你為何不這麼做: 假設在你的 "匯入" 工作表單內的 P1 欄位輸入 -> "時段設定",  P2 欄位輸入 -> "00:05:00",而將
Application.OnTime Now + TimeValue("00:00:10"), "MyDee" 修改成
Application.OnTime (Now + Sheets("匯入").Range("P2").Value), "ThisWorkBook.MyDee",如此,以後只要你不高興就到
P2 欄位來修改你高興的設定時段,那不就結了!

TOP

本帖最後由 c_c_lai 於 2012-4-27 11:22 編輯

回復 3# cfuxiong
請你先檢查一下
代號 = Sheets("紀錄").[C1]

等盤後我再看看,剛才一執行你的程式,就出現 400 的錯誤訊息,
結果連帶的我的作業程式竟然自動停止了我的DDE資料匯入!

TOP

回復 3# cfuxiong
' Sh.Activate                       ' *************
' Rng.Select                        ' *************
這兩處我將它改成註釋,因為它會將畫面不斷切到 "紀錄" 工作表單,
如果你是正在檢查 "匯入"工作表單時,設定時段一到畫面
便會被強制切到 "紀錄" 工作表單上,非常困擾!

' Application.OnTime Now + TimeValue("00:00:10"), "MyDee"  修改成
Application.OnTime (Now + Sheets("匯入").Range("P2").Value), "MyDee"
因為你的程式碼並不是放置在 ThisWorkBook 區塊內,所以 "ThisWorkBook.MyDee"
改成 "MyDee"。

股票紀錄.rar (12.55 KB)

TOP

回復 12# cfuxiong
回復 11# GBKEE
我將 GBKEE 大大的程式 (稍加修飾) 放入 股票紀錄2, cfuxiong 老弟的放入到 股票紀錄1 中,最先的檔案當然是 股票紀錄 了。
前兩者都是將程式碼放置在 ThisWorkbook 程式區內執行的, 同時 C1 欄位異動的檢查程式碼也跟著修正 (原本是 "Module1.MyDee"),
  1. '   Sheet2 (紀錄)  的程式區域
  2. Option Explicit

  3. Private Sub Worksheet_Change(ByVal Target As Range)
  4.     If Target(1).Cells = [C1] Then Run "ThisWorkbook.MyDee"
  5. End Sub
複製代碼
願兩位有個愉快的周位夜晚!
股票紀錄.rar (12.55 KB)
股票紀錄1.rar (13.13 KB)
股票紀錄2.rar (11.43 KB)

TOP

回復 14# GBKEE
請教您,代號 = .[C1] 的 [C1] 其本身在定義上指的是 Range 還是 Cells, 它們轉出值會是 Value 還是 Text?
當然在設定時,就已非常清楚該欄的屬性, 我要了解的是它在應用面上正確的使用。
譬如說之前提過的:如果該欄位是時間欄,但該欄 "A3" 儲存的是 "=TIME(LEFT(A2,LEN(A2)-4),MID(A2,LEN(A2)-3,2),RIGHT(A2,2))"
或是 A3 是 Web 直接匯入的時間,但該欄位格式並非 "時間",也許是 "自訂" 也說不定,那麼此時   時間 = .[A3],
所得到的值會是 0.604166667 還是 14:30 (假設當時時間為 02:30:00 PM)? 應該如何去做正確的宣告?

TOP

本帖最後由 c_c_lai 於 2012-4-28 11:07 編輯

回復 16# GBKEE
經測試終於體會了,早起的鳥兒真的有蟲吃!

  Sub Ex()
        ' [xxx]  'xxx 為活頁簿的物件 或函數  但不可以是變數
        ' MsgBox [max({5,100,9})]
       [工作表1!B3] = 0.666
        [工作表1!B3].NumberFormatLocal = "h:mm;@"
       MsgBox [工作表1!B3]                   '傳回的是值   .Value                 0.666
       MsgBox [工作表1!B3].Text          '傳回的傳回儲存格的格式       15:59
       [工作表1!B4] = [工作表1!B3]       '帶入的是值   .Value                 0.666
       [工作表1!B5] = [工作表1!B3].Text  '帶入的是儲存格的格式       15:59
          'Rng.Value = .ResultRange.Rows(3).Value
        'Rng 第2個位置是 數值 將它設定 為時間格式
        'Rng.Cells(2).NumberFormatLocal = "h:mm;@"      
    End Sub

我將 MsgBox [max({5,100,9})] Marked,發現好像無作用,
請問它有何作用?

TOP

回復 18# GBKEE
原來是取出其最大值。

TOP

        靜思自在 : 並非有錢魷是快樂,問心無愧心最安。
返回列表 上一主題