[[20210906120512]] 『シフト表に入力時について』(相模のクマ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『シフト表に入力時について』(相模のクマ)

エクセルのシフト表に数字を入力すると略語が表示する様にして行きたい
略語が20個あり(シフトパターンが20個)、数字を入力したシフトの略語が
表示出来たら良いなと思っています。

関数を使うのか、データ入力規則でやるのか教えて頂けたら幸いです。

下記は例:
横浜太郎の8月1日に1を入力したら日勤の「出」を表示
神奈川健の8月1日に9を入力したら夜勤の「●」を表示

8月シフト
     1日   2日  3日  4日  5日
横浜太郎 1➡出
神奈川健 3➡●
相模ケン

下記が20個の略語です。
出、〇、●、✕、A,B,C,D,E,F,G,H,I,J,K,L、研、菅、日1、日2

< 使用 Excel:Excel2016、使用 OS:Windows10 >


 これは表示だけ変更(セルの値は元の数字のまま)でいいのかセルの値そのものを置き換えたいのかどちらだろうか?
 前者であれば条件を20個指定しなければならないが条件付き書式が使える。

(ねむねむ) 2021/09/06(月) 13:18


値を変更するのであれば、普通はChangeイベントプロシージャですが、
マクロは不可ですか?
最近、言い切る方が増えているようですが。

(γ) 2021/09/06(月) 13:39


 土日が休みな交替勤務イメージ(表があると明暗が他にでるかもと配置してみた...)

    |[A]  |[B]     |[C] |[D] |[E] |[F] |[G] |[H] |[I] |[J] |[K] |[L] |[M] |[N] |[O] |[P] |[Q] |[R] |[S] |[T] |[U] |[V] |[W] |[X] |[Y] |[Z] |[AA]|[AB]|[AC]|[AD]|[AE]|[AF]|[AG]																														
 [1]| 2021|       9|    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    |    																														
 [2]|     |        |1日 |2日 |3日 |4日 |5日 |6日 |7日 |8日 |9日 |10日|11日|12日|13日|14日|15日|16日|17日|18日|19日|20日|21日|22日|23日|24日|25日|26日|27日|28日|29日|30日|1日 																														
 [3]|ID   |氏名    |(水)|(木)|(金)|(土)|(日)|(月)|(火)|(水)|(木)|(金)|(土)|(日)|(月)|(火)|(水)|(木)|(金)|(土)|(日)|(月)|(火)|(水)|(木)|(金)|(土)|(日)|(月)|(火)|(水)|(木)|(金)																														
 [4]|A0001|横浜太郎|出  |出  |出  |-   |-   |●  |●  |●  |●  |●  |-   |-   |出  |出  |出  |出  |出  |-   |-   |●  |●  |●  |●  |●  |-   |-   |出  |出  |出  |出  |    																														
 [5]|A0002|神奈川健|出  |出  |出  |-   |-   |●  |●  |●  |●  |●  |-   |-   |出  |出  |出  |出  |出  |-   |-   |●  |●  |●  |●  |●  |-   |-   |出  |出  |出  |出  |    																														
 [6]|A0003|相模ケン|●  |●  |●  |-   |-   |出  |出  |出  |出  |出  |-   |-   |●  |●  |●  |●  |●  |-   |-   |出  |出  |出  |出  |出  |-   |-   |●  |●  |●  |●  |    																														
 [7]|A0004|東京次郎|●  |●  |●  |-   |-   |出  |出  |出  |出  |出  |-   |-   |●  |●  |●  |●  |●  |-   |-   |出  |出  |出  |出  |出  |-   |-   |●  |●  |●  |●  |    																														

 下記は例:
 横浜太郎の8月1日に1を入力したら日勤の「出」を表示
 神奈川健の8月1日に9を入力したら夜勤の「●」を表示

 下記が20個の略語です。
 出、〇、●、✕、A,B,C,D,E,F,G,H,I,J,K,L、研、菅、日1、日2
(あみな) 2021/09/06(月) 14:08

 明暗では、名案は浮かばないです。(*ノ∀`*)ゞェヘヘ
(あみな) 2021/09/06(月) 14:15

| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20
  ↓   ↓   ↓   ↓   ↓   ↓   ↓   ↓   ↓   ↓    ↓  ↓   ↓   ↓   ↓   ↓   ↓   ↓   ↓   ↓
| 出 | 〇 | ● | A  | B  | C  | D  | E  | F  | G  | H  | I  | J  | K  | L  | 研 | 菅 | 日1 |日2| ✕

セルの値そのものを置き換えたいです。

※マクロをくんだことが無いのでどうすれば良いのか・・・m(__)m申し訳ありません

(相模のクマ) 2021/09/06(月) 15:43


 シートタブを右クリック、コードの表示で表示される個所に
 Private Sub Worksheet_Change(ByVal Target As Range)
    Dim WK_RANGE    As Range
    Dim WK_CNT      As Integer
    Dim WK_CHK      As Variant
    Dim WK_STR      As Variant
(ねむねむ) 2021/09/06(月) 16:26

    WK_CHK = Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
    WK_STR = Array("", "出", "〇", "●", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "研", "菅", "日1", "日2", "?")
(ねむねむ) 2021/09/06(月) 16:27

    If Intersect(Target, Range("B5:G20")) Is Nothing Then Exit Sub
    Application.EnableEvents = False
    For Each WK_RANGE In Intersect(Target, Range("B5:G20"))
        For WK_CNT = 1 To 20
            If WK_RANGE = WK_CHK(WK_CNT) Then
                WK_RANGE = WK_STR(WK_CNT)
                Exit For
            End If
        Next
    Next
    Application.EnableEvents = True
End Sub
(ねむねむ) 2021/09/06(月) 16:27

 と入力ではどうだろうか?
 なお式中の2か所のRange("B5:G20")で変換する範囲を定めている。
(ねむねむ) 2021/09/06(月) 16:28

 すまない。
 >WK_STR = Array("", "出", "〇", "●", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "研", "菅", "日1", "日2", "?")
 の最後の
 "?"
 は
 "✕"
 としてくれ。

(ねむねむ) 2021/09/06(月) 16:43


マクロを使わない方で一案。
見た目だけ変えればよいのであれば、条件付き書式で、
 1のとき 出
 2のとき 〇
 3のとき ●

のように【表示形式】を操作するという手もあるとおもいます。

(もこな2) 2021/09/06(月) 19:55


 すでに表示を変えるだけでいいのか、値そのものを置き換えるのかという質問に対して
 >セルの値そのものを置き換えたいです。
 という回答をもらっている。
(ねむねむ) 2021/09/06(月) 20:29

ねむねむさん もこな2さん あみなさん Yさん

ありがとうございます。
凄すぎます!!
(相模のクマ) 2021/09/07(火) 16:36


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.