- 帖子
- 552
- 主題
- 6
- 精華
- 0
- 積分
- 576
- 點名
- 0
- 作業系統
- win7
- 軟體版本
- office 2010
- 閱讀權限
- 50
- 性別
- 男
- 註冊時間
- 2015-2-8
- 最後登錄
- 2026-9-10
  
|
回復 1# david1216jp
2個方式,當C欄中的內容改變時(單一儲存格)和批次變更- Option Explicit
- '當C欄中的內容改變時(單一儲存格)
- Private Sub Worksheet_Change(ByVal Target As Range)
- If Target.Count = 1 Then
- If Target.Row > 1 And Target.Column = 3 Then
- Select Case Target Mod 3 '求餘數
- Case 1 '當餘數為1時,Rng所在行的A到D欄為'淺黃(後面依此類推)
- Range(Cells(Target.Row, 1), Cells(Target.Row, 4)).Interior.Color = 13434879 '淺黃
- Case 2
- Range(Cells(Target.Row, 1), Cells(Target.Row, 4)).Interior.Color = 13434828 '淺綠
- Case 0
- Range(Cells(Target.Row, 1), Cells(Target.Row, 4)).Interior.Color = 16777164 '天藍
- End Select
- End If
- End If
- End Sub
- '批次變更
- Sub Ex()
- Dim Rng As Range
- With Sheets("Color")
- Set Rng = .Cells(2, 3)
- Do While Rng <> ""
- Select Case Rng Mod 3 '求餘數
- Case 1 '當餘數為1時,Rng所在行的A到D欄為'淺黃(後面依此類推)
- .Range(.Cells(Rng.Row, 1), .Cells(Rng.Row, 4)).Interior.Color = 13434879 '淺黃
- Case 2
- .Range(.Cells(Rng.Row, 1), .Cells(Rng.Row, 4)).Interior.Color = 13434828 '淺綠
- Case 0
- .Range(.Cells(Rng.Row, 1), .Cells(Rng.Row, 4)).Interior.Color = 16777164 '天藍
- End Select
- Set Rng = Rng.Offset(1) '移到下一儲存格
- Loop
- Rng.Select
- End With
- End Sub
複製代碼 |
|