標題:
[發問]
比對不合格人員工號
[打印本頁]
作者:
kasa
時間:
2015-9-23 22:40
標題:
比對不合格人員工號
請教各位大大,
如何讓以C欄不合格人員工號(後續有機會再增加不合格人員工號)為依據,當B欄一一輸入工號後,
可手動執行一巨集,若B欄某一工號有等於C欄工號,則該B欄某一工號之背景會自動填滿紅色
感謝~~[attach]22073[/attach]
作者:
kasa
時間:
2015-9-23 23:46
回復
1#
kasa
發現把C2-C5定義名稱為"不合格人員"
再用格式化條件設定如圖,一樣可以達到相同效果,不過我再試試看是否可寫出巨集~
[attach]22076[/attach]
作者:
GBKEE
時間:
2015-9-24 06:33
回復
2#
kasa
這工作表模組的程式碼
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Target.Interior.ColorIndex = 52
With Target.Cells(1)
If .Column = 2 And .Cells <> "" Then
If Application.CountIf([不合格人員], .Cells) = 1 Then
.Interior.ColorIndex = 3
ElseIf Application.CountIf([合格人員], .Cells) > 1 Then
'加一個條件合格人員有重複
.Interior.ColorIndex = 4
Else
.Interior.ColorIndex = xlNone
End If
End If
End With
End Sub
複製代碼
作者:
Joforn
時間:
2015-9-24 08:25
回復
1#
kasa
Sub FindIDByStrComp()
Dim lngRow As Long
Dim strFind As String
Dim strValue As String
Dim Range1 As Range
With ActiveSheet
lngRow = .Range("C" & .Rows.Count).End(xlUp).Row
strFind = vbNullChar & Join(Application.WorksheetFunction.Transpose(.Range("C1:C" & lngRow).Value), vbNullChar) & vbNullChar
lngRow = .Range("B" & .Rows.Count).End(xlUp).Row
For Each Range1 In .Range("B1:B" & lngRow)
With Range1
.Interior.Pattern = xlNone
strValue = vbNullChar & .Value & vbNullChar
If Len(strValue) > 2 Then
If InStr(strFind, strValue) > 0 Then
.Interior.Pattern = xlSolid
.Interior.Color = 255&
End If
End If
End With
Next
End With
End Sub
複製代碼
作者:
kasa
時間:
2015-10-3 20:07
感謝各位大大
作者:
hcm19522
時間:
2015-10-5 13:53
格式化-->點選B1:B20-->公式=COUNTIF(C$2:C$16,B1)
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)