- 締切済み
条件付き書式で反映した休日のデータを数えたい
条件付き書式とCOUNTIF関数を使用して、休日が塗りつぶしされるように設定をしています。 その塗りつぶしされたセルのうち、「大阪」「南部」と入力された個数をカウントしたいのですが、関数のみでカウントできればいいなと思ってます。 休日は別シートの「祝日」と名前を付けた部分に登録しています。 COUNTIFで「祝日」が参照され、塗りつぶしされるまではできたのですが・・・ 添付の通りでいけば、8日と16日にそれぞれ「南部」「大阪」とあるので「休日出勤数」をカウントして「2」と。 休日ではない土曜日において「休」とある1日と15日を「出土休み日数」をカウントして「2」と。 塗りつぶしが流動的なので、フィルターを使用するのかなんなのか、さっぱりわかりません。 関数のみで対応できればいいなと思っています。 どなたか、教えてください。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- imogasi
- ベストアンサー率27% (4737/17070)
「ワークシートのセルの情報」として、(1)セルの値と(2)表示形式(とその結果=見た目)というのがある。 エクセルの「関数」=ワークシート関数は、(1)しか対象にできない(引数に書けない・指定できない)。 (しかし最近はエクセルの関数の増加が図られ(他社Google,など対抗?)、関数の質についての考えに、変化の兆しが見え、MSが新しい関数を設け、広がるかもしれないが。) このことを知らない質問者が、同類の質問を、半年に1回ぐらいOKWAVEに出す。 ーー 本件の、条件付き書式の設定で、「数式が」=関数を使っている、と思うが、 しかし、条件付き書式を設定したことは一度忘れて、(条件付き書式の結果を土台にするのでなく)、改めて、関数COUNTIFで下記条件を引数に指定することを考えないといけない。 ーー 土日(全員休み?)+祝日+会社・働く人の休日(振休・有休)+南部+大阪 を関数の条件として記述しないとならない。 ーー 多分条件付き書式では、土日・祝日は下記だろうか。 土日=改めてWEEKDAY関数かその関数の結果 祝日等=改めてVLOOKUP関数かその結果(土日も含めてOR条件?) 加えて 南部、大阪=COUNTIF関数の引数でセルの値として指定(OR条件?) これら条件がANDまたはOR条件で組み合わされ、望む結果になるよう式を作らないといけない。 ーー 状況が不確かな点があり、複雑になりそうで、具体的な式は書けないが、考え方だけ。 さらに条件を判別する対象セル列が月によって変わるので、複雑さがさらに増す(3か月分1列なら少し単純化する)。 ーー 参考までに、 私なら(1)セルごとに条件判別が繰り返しが記述出来る (2)条件を複数行に分けて書ける、 ところの、VBAでやりますが。
- hiro_1116
- ベストアンサー率30% (2581/8347)
それぞれ、下記のカウントとは違うのでしょうか? 「大阪」の個数+「南部」の個数 「休」の個数
お礼
ありがとうございます。 補足にも書きましたが、「大阪」「南部」の区別はありません。 なので、塗りつぶし内にある「大阪」「南部」を数えて「2」とカウントされたいです。 ごめんなさい、説明がつたなくて・・・
補足
「大阪」、「南部」の区別はありません。 この表であれが、カウントが「2」となります。
お礼
そうなんですよねっっ 無知ではあるのですが、INDEX関数とMATCH関数を組み合わせて、出土休み日数のセルを特定できればと思っていました。 条件付き書式で流動的に変わるそのセルをどうやって選択範囲に指定して、COUNTIFできるか。 そのテーマだったのですが、どうやっても無知な私ではそこにたどり着かないんです。。。 出土曜日を条件付き書式でブルー等の違う色にして、VBAでそのブルー等をCOUNTIFするとか・・・ 考えてもそこまでたどり着かないんですよねっ むずかしいですね、やっぱり。 考え方を変えて、そもそも「大阪」「南部」に区別をするのが一番ですねっ アドバイス、ありがとうございました。