Board logo

標題: 為何vba不能工做呢? [打印本頁]

作者: ANGELA    時間: 2010-7-2 14:57     標題: 為何vba不能工做呢?

Public Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
Target.Offset(, -1) = Now
End If
End Sub
是那裡有問題,請大大解答[attach]1612[/attach]
作者: jackdream    時間: 2010-7-2 15:02

本帖最後由 jackdream 於 2010-7-2 15:20 編輯

是要更換 sheet 時,啟動程序嗎?
==> 這個放在 ThisWorkbook ,用 Private Sub Workbook_SheetActivate(ByVal Sh As Object)

或者是要更改儲存格內容時啟動程序?
==> 這個放在 sheet 裡面,用 Private Sub Worksheet_Change(ByVal Target As Range)
作者: ANGELA    時間: 2010-7-2 15:15

請問要如何放到SHEET裡面,我是新人不知如何處理.
作者: jackdream    時間: 2010-7-2 15:23

請問要如何放到SHEET裡面


您好! 請參考附圖.
[attach]1613[/attach]
作者: ANGELA    時間: 2010-7-2 16:00

Jack 謝謝,已經可以了,原來是放錯地方才不能執行.
作者: ANGELA    時間: 2010-7-14 13:05

新丁問的笨問題請知道的幫忙一下.
請問我在另一個工作表中也放了同樣的vba內容有稍有一點不同,卻不能執行.那又是為什麼?
作者: ANGELA    時間: 2010-7-14 13:13

抱歉,剛寫好時不能執行.但存檔再重開,就可以了.需望不要誤導大家.
也不知道是為什麼?
作者: kimbal    時間: 2010-7-14 21:34

抱歉,剛寫好時不能執行.但存檔再重開,就可以了.需望不要誤導大家.
也不知道是為什麼?
ANGELA 發表於 2010-7-14 13:13


可能是vba project未及自動重新整理好
下次貼上代碼後可以按一下 "偵錯->編譯vbaproject"

    http://kimbalko-chi.blogspot.com ... xcel-1997-2010.html
作者: ANGELA    時間: 2010-7-15 09:46

原來如此,謝謝指導.另請問類似這種的VBA不能用F8來測試,那要如何知道那裡有錯?
作者: Hsieh    時間: 2010-7-15 10:52

回復 9# ANGELA


    先設定中斷點(在程式任意處按F9)
產生褐色中斷點後
觸發事件後即會執行到中斷處停止
就可按F8逐行偵錯
作者: ANGELA    時間: 2010-7-15 13:56

謝謝版主,困擾已久的問題總算知道如何處理了.




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