- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
本帖最後由 GBKEE 於 2014-2-9 07:34 編輯
回復 1# newlink
這工作表模組預設的觸動程式碼- Option Explicit
- Private Sub Worksheet_Change(ByVal Target As Range)
- 'Change : 工作表資料有變動時所觸發的程序
- Application.EnableEvents = False
- Select Case Target(1).Column
- Case 1
- '當A2選擇保外or人為,B2自動填上”填金額”做為提醒,
- If Target(1) = "保外" Or Target(1) = "人為" Then Cells(Target(1).Row, "B") = "填金額"
-
- Case 2
- '當B2改填上報價金額時 , C2自動填上TODAY日期
- If IsNumeric(Target(1)) And Target(1) > 0 Then
- Cells(Target(1).Row, "C") = Date
- Else '不是數字且<0
- Target(1) = "填金額"
- Cells(Target(1).Row, "C") = ""
- End If
- End Select
- Application.EnableEvents = True
- End Sub
- Private Sub Worksheet_SelectionChange(ByVal Target As Range)
- 'SelectionChange :工作表儲存格 有移動時所觸發的程序
- If Not Application.Intersect(Range("a:a"), Target) Is Nothing Then '儲存格移動到A欄時
- Range("a:a").Validation.Delete
- Target(1).Validation.Add xlValidateList, , , "保內,二修,保外,人為"
- 'Validation 物件,該物件代表指定範圍內的資料驗證(輸入的資料要符合指定的資料)
- 'A欄有下拉選單,分別是:保內、二修、保外、人為
- End If
- End Sub
複製代碼 |
|