[[20020721161955]] 『勤務表・記号ごとの集計を表示したい』(看護不調さん) ページの最後に飛ぶ

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

 

『勤務表・記号ごとの集計を表示したい』(看護不調さん)

勤務表に記号で表示して各記号の集計を数字で表示したい

          平成14年8月   勤務割表

        1  2  3  4  5  6  7  8  9  10         準深遅休

         木 金 土 日 月 火 水 木 金 土         夜夜番み

 ○×美雪  ◎ ○ ×   △   am   × ◎           

 ○×恵子    ×   ○ ×     pm ◎ ○

 ○×由美  ×   ◎ ○ ×   △   am    

 ○×慶子      ×   ◎ ○ ×   △ 

 ○×優子  ◎ ○   ×     ◎ ×   △


 記号の個数を求めるには =countif(範囲,検索条件) の式を用います。

M4に =COUNTIF($B4:$K4,"○") と入力するのをM3の記号の条件にして式を変更すると

 =COUNTIF($B4:$K4,M$3) になります。

 M3:R3に○、◎、△、×、am、pm と入力し

M4に =COUNTIF($B4:$K4,M$3) と入力して B4:R8にコピーすれば

○ ◎ △ × am pm

1 2 1 2 1 0

2 1 0 2 0 1

1 1 1 2 1 0

1 1 1 2 0 0

1 2 1 2 0 0

以上の結果が得られます。

 (シニア)


早速のご回答どうもありがとうございました。この質問は、未完成のまま登録してしまいましたが、第2弾の質問もございます。とにかく経験不足で申し訳ございません。よろしくお願いいたします。

(看護不調さん)


2002/07/22

『勤務割表の記号別集計ができれば教えてほしい』(看護不調さん)

たとえば表題 「平成14年8月勤務割表」E1〜AI1に日にち E2〜AI2に曜日 (個人集計)AJ1AJ2に深夜計 AK1AK2に準夜計 AL1AL2に遅番計 AM1AM2に休日計 C3〜C26に氏名 C27に深夜計 C28に準夜計 C29に遅番計 C30に休日計 E27〜AI30に各1日集計 

E3〜AL26に各記号もしくは、空白   

<記号例>深夜=◎ 準夜=○ 遅番=△ 休日=× 等

勤務表を作成中、1日の深夜〜休日の集計及び、個人の月の深夜〜休日の集計が随時確認できる様な表が、できたら作りたいのですが、可能ですか?

尚表題の○月を書き換えると、E2〜AI2の曜日のみ、その月の曜日に変換できるでしょうか?できたら、日曜日になった列のみバックの色か、文字色が変わればなお最高なのですが、何ゆえ初心者で「不調」なので、できたら詳細にご回答、ご指導よろしくお願いいたします。


 具体的に表設定が記入されていますので、これを元に、ご希望のように設定しました。

万年利用型の要望ですので、多少面倒な入力式や設定になります。

根気よく、完成まで頑張って下さい。

 C1に2002と入力、D1に8と入力、E1:AF1に1〜28の連番入力、

AG1に =IF(AF1="","",IF(MONTH(DATE($C$1,$D$1,AF1+1))>$D$1,"",AF1+1))

と入力してAI1までコピーします。

E2に =DATE($C$1,$D$1,E1) と入力しAF2までコピーします。

AG2に =IF(AG1="","",DATE($C$1,$D$1,AG1)) と入力しAI2までコピーします。

E27に =COUNTIF(E$3:E$26,"◎") 入力、AF27までコピー、

AG27に =IF(AH$1="","",COUNTIF(AH$3:AH$26,"◎")) AI27までコピーします。

E28に =COUNTIF(E$3:E$26,"○") 入力、AF28までコピー、

AG28に =IF(AH$1="","",COUNTIF(AH$3:AH$26,"○")) AI28までコピーします。

E29に =COUNTIF(E$3:E$26,"△") 入力、AF29までコピー、

AG29に =IF(AH$1="","",COUNTIF(AH$3:AH$26,"△")) AI29までコピーします。

E30に =COUNTIF(E$3:E$26,"×") 入力、AF30までコピー、

AG30に =IF(AH$1="","",COUNTIF(AH$3:AH$26,"×")) AI30までコピーします。

AJ1:AM1に深夜、準夜、遅番、休日と入力します。

AJ2:AM2に◎、○、△、×と入力します。

AJ3に =COUNTIF($E3:$AI3,AJ$2) と入力し、AJ3:AM26にコピーします。

E27:AG30を選択し、Σオートサムをクリックすると =SUM(E27:AI27) と合計がじどうにゅうりょくされます。

D1を選択して、右クリックメニューの【セルの書式設定】【表示形式】の「ユーザー定義」で

G/標準"月" とします。結果は8月になります。

文字入力で8月と入れないようにして下さい。計算できなくなります。

D1を選択して、データメニューの【入力規則】で【入力値の種類】を「リスト」にし、

【元の値】に1,2,3,4,5,6,7,8,9,10,11,12と入力します。

D1をクリックすると1〜12の数値をリスト選択できるようになります。

A1に =DATE(C1,D1,1) と入力して【セルの書式設定】【表示形式】の「日付」で平成9年3月4日を選択してから、

「ユーザ定義」で ggge"年"m"月勤務割表" として下さい。

これで、D1の月をリスト選択すれば、曜日、標題、月末日もその月に応じて変動します。

最後に、日曜日の文字色を「赤の太字】に設定します。

E1:AI30を選択して、書式メニューの【条件付き書式】で設定を「数式が」を選択し、

「=text(E$2,"aaa")="日"」と式を入力します。

次に【書式】ボタンをクリックして、フォント色を「赤」にして、「太字」を指定します。OK,OKで完了です。

これで、毎月日曜日は「赤の太字」になります。

 (シニア)


こちら事務局です、2002/07/22に追加された項目をこちらに移動しました。(kazu)


(シニア)さん 開くのが遅くなってどうもすみませんでした。実は、看護研修・出張に行っていて、やっと帰宅しました。開いて見て、こんなに複雑な関数を、しかもこんなに丁寧にお答え頂いて、もうびっくり、感激です!根気よく挑戦してみます。きっと希望どうりの勤務表が完成すると思います。完成した暁には、ご報告いたします。本当にありごとうございました。(看護不調)


(シニア)さん ウキウキ挑戦したのですが、E2:AF2に表示されるのは、2002/8/1〜28で AG2:AI2に表示されるのは、37497・37498・37499になってしまいます。(月・火・・日)の表示ができませんでした。???? その外は、おかげさまで大丈夫でした。ついでに E3〜AI26の記号入力の入力方法で簡単な入力方法 例えば(1=◎・2=○・3=△・4=×)のような単純なやり方があれば教えてください。この調子だとなかなか婦長には、なれませんね!(看護不調)


 失礼しました。一番大切な説明を忘れていました。

E2:AI2の範囲を選択して、マウスの右クリックメニューの『セルの書式設定』⇒【表示形式】の「ユーザー定義」で aaa として下さい。

『説明』このように日付を書式設定で曜日の表示にすることができます。

aaaは日月火の省略型で、aaaaとすると日曜日月曜日火曜日と表示されます。

dddはSun、Mon,Tueになり、ddddとすればSunday,Monday,Tuesdayになります。

 記号入力の入力方法で簡単な入力方法 例えば(1=◎・2=○・3=△・4=×)する方法は

@置換機能を利用します。

記号の代わりに1,2,3,4を入力して、変換したい範囲を選択し、Ctrl+H(Ctrlキーを押しながらHキーを押す)で

【検索する文字列】1とし、【置換後の文字列】で◎『すべて置換』をクリックします。この方法を繰り返します。

A◎を入力したいセルをCtrlキーを押しながら選択します。最後に◎文字のセルを選択して

ファンクション『F2』を押して編集状態にしたら、Ctrlキーを押しながらEnterキーで確定します。

『説明』このようにCtrlキーを押しながらセル選択すると不連続セル選択ができます。

セル選択後文字や式入力してCtrl+Enterで確定すると選択セルすべてに入力できます。

Aは文字入力する操作を行う代わりに入力済みの文字を利用した例です。

表が自動計算されるようになると、どうしてもデータ入力が面倒な作業に感じられます。

上記の方法に慣れて、便利な作業効率の方を選んで下さい。

 同様の質問がナーシングホームさんからありましたので参考にして下さい。

大変失礼致しました。また何か不明な点がありましたら尋ねて下さい。

 (シニア)


記号入力の簡単な方法は?                               

入力規則のドロップダウンリストではどうでしょうか?

ちょっと時間が経ちすぎてみてないかな?


シニアさん返事が送れてどうもすみません。1週間のブランク、報告書作成等でそれどころでは、ありませんでした。記号入力の簡単な方法なのですが、@の方法は、理解できたのですが、Aの方法は、いまいち理解できません。@の方法は、数字表示後に置換機能で変換する方法なので少し、入力中(勤務割り調整中)での理解が困難です。できたら、1と入力すると◎ 2=○という感じで即、記号表示、訂正するときは、0で空白と 言うような方法があればよいのですが?

入力規則のドロップダウンリストの件ですが使ったことがないので条件等の設定等が理解出来ません。

それと、たとえばC列の氏名、AJ〜AM列の集計欄、27行〜30行の集計欄、を固定表示して

その他 入力範囲のみスクロールして、入力と同時に随時集計の確認が、出来るようなワークシートができたらよいのですが。次から次と欲ばっかり言って、申し訳ありません。(看護不調)


 1と入力すると◎ 2=○という感じで即、記号表示、訂正するときは、0で空白と言うような方法があればよいのですが?

同一セルに入力する関数では循環となりますし、1を入力すると式は削除されてしまいます。

マクロ処理で可能かもしれません、誰かご存知の方フォローして下さい。

@の置換方法は月入力データを一気に数字で入力し、置換範囲を選択して行うと効率がよいと思います。

A日々入力する場合に大変便利ですので、この方法を利用しています。もう一度説明をご覧になって下さい。

B何方かが紹介されたリスト入力方法ですがデータ入力の先頭セルE3を選択し、

データメニューの『入力規則』設定で『入力値の種類』を「リスト」にし、

『元の値』に「◎,○,△,×」と入力して、OKで、そのセルでリスト選択できるようになります。

この方法は既にD1で月をリスト選択設定しました。

試しに、E3をクリックするとリストボタン▼が表示されます。このボタンをクリックすると◎,○,△,×を選択します。

E3に表示された記号をDeleteキーで削除してから、

E3をコピーし、E3:AI26の範囲に貼り付ければ各セルでリスト選択できるようになります。

画面の固定はE3を選択し、ウインドウメニューの『ウインドウ枠の固定』をクリックします。

現在の表でA,B,D列は無駄ですので、表の上に行を挿入して、C2の2002のセルの外枠をC1にドラッグして移動します。

同様にD2の8月をC2に移動します。

A2の平成14年8月勤務割表をE1に移動してE1:L1をセル結合して表示させます。

この作業が終わったら、A,B,D列を削除します。

これで、画面上に表全体が表示されますのでスクロールしなくても、集計結果が一覧できます。

次はA4用紙横印刷できるように設定して下さい。

 (シニア)


こんばんは、 

マクロになりますがよろしければ・・・

下記マクロをシートモジュールに貼り付けてください。

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

    Select Case Target.Value

        Case "◎"

            Target.Value = "○"

        Case "○"

            Target.Value = "△"

        Case "△"

            Target.Value = "×"

        Case "×"

            Target.Value = "◎"

     Case Else

            Target.Value = "◎"

    End Select

    Cancel = True

End Sub

 貼り付け方は、勤務表のあるシートのタブを右クリックすると

 VBEの編集画面が出てくると思います。 

 そこの右側のコードの表示画面に貼り付けてください.

 やり方として、画面上でダブルクリックをすると◎→○→△→×→◎・・・と

 ダブルクリックを行うごとに記号が変わっていきますので、

 必要な記号までダブルクリックをしていただくといいかと思います。 

 もしよろしければお使いください。 


すいません

 うまくいきませんでした

 コードの最初の部分でなぜか、? マークがついてしまいました。

 すいません・・            ↓     ↓矢印の付近についてます

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

 (尋)


 こちら事務局です。この?マークはWikiの仕様で、[大文字小文字が1組以上混在]して

 いると新規の投稿の記事名として取り扱うため、こうなります。

 早速対策しましたので今後はこの問題は起こりません。(尋)さん御迷惑をおかけ

 しました。

 (kazu)


 尋さん早速マクロの案内有難う御座います。

ABと併用して各セルでダブルクリックで確認しながら入力出来る方法が追加されましたので、

看護不調さんの勤務表も入力方法が多機能になりました。

 (シニア)


 (シニア)さんをはじめ(尋)さんや(kazu)さんに至るまで、御迷惑をおかけして

どうもすみません。Bのリスト入力が簡単で使いやすそうです。有難うございました。

画面の固定なのですが、前回の質問で、例えば(C列の氏名)(AJ〜AM列の集計欄)(27行〜30行の集計欄)とありますが、実は、集計欄の記号数も10種類、行数も予定行と実施行含めて70行ぐらい使用します。回答にある不要列の削除を、しても全体表示は、できません。できたら{曜日欄も含め四方固定}できればベストなのですが?次に用紙設定ですが、ちなみにA3横で印刷します。用紙とワークシート作成で簡単な設定、もしくは調整等があれば重ねてお願い致します。(尋)さんのマクロ・・・「下記マクロをシートモジュールに貼り付けてください。」(不調)にはチンプンカンプンで操作さえ???

少しずつ勉強して行きます。その節には、どうぞご指導の程宜しくお願い致します。

(看護不調)


色々と試行錯誤した結果 入力をsheet1で、→sheet2に反映させて、sheet2を印刷専用画面に設定することにより、ほぼ完成致しました。完成度90%位かな?

おかげさまで、毎月の勤務割の時間削減ができそうです。大変お世話になりました。

少し成長した(看護婦長)より


 看護不調さんから看護婦長さんに昇格しましたね

Sheet1を印刷設定して、このSheet1を他のSheet11枚コピーして、職員の年間集計表を作成すれば100%完成になります。

年間資料も記録に残り、月々入力する毎に集計値が表示されて、勤務調整に生かせます。

 (シニア)

コメント返信:

[ 一覧(最新更新順) ]


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