これでシフトが一目瞭然!自分の勤務シフトをパッと確認できるマクロ

エクセル

こんにちは、エクセルで業務効率化したいと思っている皆さん!

今日は、エクセルで作った勤務シフト表をもっと見やすくするマクロを紹介します。

毎日、「自分のシフトってどこだっけ?」ってシフト表を見つめて迷ってしまう方、このマクロを使えばもうそんな悩みとはおさらばです!

シフト確認が超簡単になるマクロの作り方

このマクロ、何がすごいかって、自分の名前をクリックするだけで、勤務日がパッと黄色く光るんです!

これで、いつ自分が勤務なのか一目瞭然。

しかも、エクセル初心者でも簡単に設定できちゃいます。では、早速その方法を見ていきましょう。

シフト表を準備しよう!

まず、勤務シフト表があるシートを用意します。このシート名は「Sheet1」としますが、あなたのエクセルファイルに合わせて調整してくださいね。

従業員リストを作成しよう!

シフト表の右側(例えば、列L)に従業員リストを作成します。リストの範囲は「L3」としますが、これもあなたのリストに合わせて変更可能です。

マクロを貼り付けよう!

次に、下記のマクロコードをエクセルの「Sheet1」に貼り付けます。このコードがシフト表を魔法のように変えてくれますよ!

赤枠部のコードです。

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim ws As Worksheet
    Dim employeeName As String
    Dim cell As Range
    
    ' シフト表があるシートを指定
    Set ws = ThisWorkbook.Sheets("Sheet1") ' シート名を調整してください
    
    ' 右側の従業員リストの範囲を指定
    If Not Intersect(Target, ws.Range("L3:L12")) Is Nothing Then
        ' 選択されたセルの名前を取得
        employeeName = Target.Value
        
        ' 既に黄色で塗りつぶされたセルをクリア
        ws.Range("C4:I8").Interior.ColorIndex = xlNone
        
        ' シフト表内の名前を検索して、該当するセルを黄色に塗りつぶす
        For Each cell In ws.Range("C4:I8")
            If cell.Value = employeeName Then
                cell.Interior.Color = vbYellow
            End If
        Next cell
    End If
End Sub

どうなるの?

このマクロを設定すると、従業員リスト内の自分の名前をクリックした瞬間、シフト表の該当するセルが黄色に変わります。

これで、シフトがどこにあるのか、瞬時に確認できるんです。毎日これで、自分のシフト確認がサクッとできて、時間の節約になりますよ!

他の従業員をクリックしても同じようにハイライトされます。

まとめ: シフト表をもっと使いやすくしよう!

このマクロを使えば、エクセルシフト表がまるでカスタムメイドのようになります。

名前をクリックするだけで、勤務日がパッと見えるので、確認作業が楽ちん!

これで、あなたのエクセルスキルも一歩レベルアップです!

コメント

タイトルとURLをコピーしました