- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
回復 1# av8d - Option Explicit
- Private Sub Worksheet_Change(ByVal Target As Range)
- Dim Rng As Range, I As Integer
- With Target
- '.Select '多一次確認
- If .Column = 4 Or .Column = 12 Then
- If Cells(.Row, 4) <> "" And Cells(.Row, 12) <> "" Then
- For I = 1 To Cells(Rows.Count, .Column).End(xlUp).Row
- If Cells(I, 4) = Cells(.Row, 4) And Cells(I, 12) = Cells(.Row, 12) And I <> .Row Then
- If Rng Is Nothing Then
- Set Rng = Union(Cells(I, 4), Cells(I, 12))
- Else
- Set Rng = Union(Rng, Cells(I, 4), Cells(I, 12))
- End If
- End If
- Next
- If Not Rng Is Nothing Then
- Set Rng = Union(Rng, Cells(.Row, 4), Cells(.Row, 12))
- Rng.Select
- 'MsgBox Cells(.Row, 4) & vbNewLine & Cells(.Row, 12) & vbNewLine & "出現重複 "
- ' UserForm2.Show
- End If
- End If
- End If
- If .Cells.Count > 1 Then Exit Sub
- If Union(.Cells, [K:K]).Address <> [K:K].Address Then Exit Sub
- If .Cells = "紅色" Then
- UserForm1.Show
- ElseIf .Cells = "藍色" Then
- UserForm3.Show
- End If
- End With
- End Sub
複製代碼 |
|