Excel-VBA 重複データの検出

Excelでの入力後のチェックで厄介なのは「重複」です。
今回はシフト表での問題。

値は正しいのですが、時間帯が重複することは許されないので、これを検出します。
Loop でセルを一個、一個確認しながら比較する、原始的な方法ですが、検出時に
該当セルのフォントを着色出来る強みがあります。

縦に時間軸、横が作業場所、同じ時間帯に同一ワーカー(コードth999)が、存在
した場合、重複データのフォントを赤に変更、ただし比較は1:1まで。
修正後、再チェックを繰り返せば2個以上でもOK
構文は可読性を重要視しています・・・・

以下はそのSouce

Sub DupCHECK()
'
' DupCHECK Macro

' Sheet Room でのヘルパーの時間帯重複のCHECK


Sheets("Room").Select



Range("B5:BA33").Select
With Selection.Font
.Name = "游ゴシック"
.FontStyle = "標準"
.Size = 11
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ThemeColor = xlThemeColorLight1
.TintAndShade = 0
.ThemeFont = xlThemeFontMinor
End With
Range("A4").Select


Dim i As Long, j As Long, K As Long


For K = 5 To 33

For i = 2 To 53

For j = i + 1 To 53

If Left(Cells(K, i), 1) <> "t" Then
Exit For
End If

If Cells(K, i) = Cells(K, j) Then
Cells(K, i).Font.ColorIndex = 3
Cells(K, j).Font.ColorIndex = 3
Exit For
End If

Next j

Next i

Next K

'
End Sub



わかお かずまさ
VegaSystems

📷📷📷📷📷📷
#LAN_PRO
#Bloguru
#kuma

ワオ!と言っているユーザー

×
  • ブログルメンバーの方は下記のページからログインをお願いいたします。
    ログイン
  • まだブログルのメンバーでない方は下記のページから登録をお願いいたします。
    新規ユーザー登録へ