Board logo

標題: [發問] 如何製作開關用途的按鈕? [打印本頁]

作者: mnsmrtl    時間: 2010-10-28 10:51     標題: 如何製作開關用途的按鈕?

程式碼如下
Private Sub start_Click()
    Dim switch As Boolean
    switch = IIf(switch, False, True)
    Sheet7.Cells(1, "E") = IIf(switch, "ON", "OFF")
    getdata switch
End Sub
請問這樣寫有那裡錯誤嗎?執行後出現訊息,「引數不為選擇性(optional)」

另外請問
使用application.ontime now+timevalue("00:01"), "getdata"
有什麼方法可以將前一次設定的schedule取消?
因為我在getdata本身當中有再輸入上面那段code
這樣它會在開始執行後每隔一分鐘就再執行一次,
但是一旦點擊按鈕數次後,它就會連續執行了
作者: oobird    時間: 2010-10-28 11:07

看看getdata的參數設為什麼?
作者: mnsmrtl    時間: 2010-10-28 13:21

回復 2# oobird


    參數就是switch,是T/F型態的變數
作者: GBKEE    時間: 2010-10-28 15:18

回復 3# mnsmrtl
「引數不為選擇性(optional)」 的錯誤 你好像是指因 getdata switch 這程式碼所引起的
但引起這錯誤應該是 Application.OnTime Now + TimeValue("00:00:01"), "getdata"
請修改成如下
Application.OnTime Now + TimeValue("00:00:01"), "'GetData  " & switch & "'"
有什麼方法可以將前一次設定的schedule取消?
因為我在getdata本身當中有再輸入上面那段code

oobird 版主 不是說 [看看getdata的參數設為什麼?]
意思是你取消的條件是什麼?
作者: mnsmrtl    時間: 2010-10-29 02:36

我是想在switch切換回false時停止
我在第一段的呼叫getdata,也是希望透過按鈕觸發
按鈕點擊→switch=true→開始定時執行getdata;再點擊→switch=false→getdata中止
這是我想作出的效果,還請兩位版主不吝指教,感謝
作者: GBKEE    時間: 2010-10-29 06:56

回復 5# mnsmrtl
  1. Private Sub start_Click()
  2.     Dim switch As Boolean
  3.     switch = IIf(switch, False, True)
  4.     Sheet7.Cells(1, "E") = IIf(switch, "ON", "OFF")
  5.     If switch=True then
  6.        Application.OnTime Now + TimeValue("00:00:01"), "'GetData  " & switch & "'"
  7.     End If
  8. End Sub
複製代碼

作者: mnsmrtl    時間: 2010-10-31 01:06

已測試成功,感謝版主解答




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