![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
日曜日始まりのボックス型の万年カレンダーを作成しています。各月ごとに稼働日と休日の日数を出したいのですが、思うようにできません。
西暦を入れると自動で日にちが出てきます。
前の月と次の月の日にちは文字がグレーになるよう条件付き書式を設定してます。
また、別シートに祝日一覧があり、祝日は赤字のピンク塗りつぶしになるよう条件付き書式を設定してます。
元々、日曜は赤字、土曜は水色時にしています。
各月ごとに稼働日と休日の日数を出したいのですが、
(4月は稼働日数をC10に休日日数をG10に)
例えば4月の休日日数のセルに[=CountColorA(B4:H9)]を入れ、
標準モジュールには
Function CountColorA(Rng As Range) As Long
Dim myRng As Range
Dim Col_cnt As Long
Application.Volatile
Col_cnt = 0
For Each myRng In Rng
If myRng.Interior.ColorIndex > 0 Then
Col_cnt = Col_cnt + 1
End If
Next myRng
CountColorA = Col_cnt
End Function
を入れています。
これだと自分でピンクに塗りつぶした分は更新すればカウントされますが、
条件付き書式で設定したピンク部分はカウントされません。
条件付き書式で設定した分もカウントされるよう、また、稼働日の日数をカウント(前の月と次の月とピンク塗りつぶしを除いた)されるようにするには
どうすれば、良いでしょうか。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんにちは
祝祭日一覧がきちんとできているなら、カレンダーの色表示などとは関係なく、稼働日等を計算可能です。
日付や日にちは全てシリアル値とします。
求めたい月は決まっているのですから、計算手順として
① その月の全日数を求める
「翌月1日」-「当月1日」
https://www.tschoolbank.com/excel/function-eomon …
② 当月の稼働日を求める
NETWORKDAY(当月1日, 当月月末日, 祭日一覧)
https://dekiru.net/article/16390/
③ 当月の休日数を求める
「全日数」 - 「稼働日数」 (= ③ - ① )
といった感じでできるでしょう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA初心者です。 VBAで行単位で条件付き書式の色をカウントしたいです。 大量のデータがあるExc 3 2022/06/08 10:02
- Visual Basic(VBA) VBA初心者です。 VBAで行単位で条件付き書式の色をカウントしたいです。 大量のデータがあるExc 3 2022/06/08 10:00
- Visual Basic(VBA) Sheet2からオートフィルターで売上日を抽出した件数をカウントし、その件数をSheet1のセルB1 2 2023/01/12 12:24
- Excel(エクセル) VBAで組み合わせ算出やCOUNTIFSの処理を高速化したいです。 4 2022/04/07 02:38
- Visual Basic(VBA) 前回ご教授いただいたコードに覚えたてのループ処理で品名りんごAから順に20回for nextでループ 7 2023/01/13 22:01
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- Excel(エクセル) 出勤簿の土、日、休日に色付けできない 2 2022/08/04 20:10
- Visual Basic(VBA) ExcelVBAのマクロについて。 9 2022/05/04 14:50
- Visual Basic(VBA) VBAの繰り返し処理について教えてください。 3 2022/08/02 13:21
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
MsgBoxの中にある数字や日付の...
-
クリスタルレポートの改ページ...
-
VBA 条件付き書式で空欄は適用...
-
チェックボックスのある行を非...
-
携帯サイトのPHPで<div style>...
-
JAVAのCalendarについて質問です
-
コンスタント変数について
-
spread6.0(セル連結)
-
16進数の文字列を普通の文字列...
-
【VBA】計算結果に小数点第2位...
-
C#にて、他言語にローカライズ...
-
スリープ状態とロック状態の違...
-
webページをリンクまで含めて保...
-
Apache起動エラー
-
パワーポイントで発表
-
旧G3と新型のibookでのデータ...
-
スキャナを使用したいが
-
ubuntuソフトウェアセンターか...
-
LANケーブルのつなぎ方
-
シェアドイーサネット
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【VBA】計算結果に小数点第2位...
-
MsgBoxの中にある数字や日付の...
-
チェックボックスのある行を非...
-
VBA 条件付き書式で空欄は適用...
-
クリスタルレポートの改ページ...
-
POIを使った書式設定
-
時間表示で0:48:17と入力すると...
-
spread6.0(セル連結)
-
マイナス記号を▲で表す方法
-
FORMAT関数で値が変わる
-
MSAccessでODBCを介してDB接続...
-
VBA コンボボックスの表示(日...
-
EXCEL2010でRGB指定できない
-
grep で複数条件を指定
-
C#にて、他言語にローカライズ...
-
エクセルのメモについて教えて...
-
エクセル元データの#N/Aを非表...
-
VBでエクセル出力の文字を太字...
-
$_SERVER["PHP_SELF"]などでURL...
-
syntax error, unexpected $end...
おすすめ情報