こんにちは。
最初にお断りしておきますが、コード作成依頼という形ではなく、
ここまで実行していて、ここに詰まっているという形で質問してもらった方がいいですね。
利用上のお願い
https://www.moug.net/faq/kiyaku.html
の禁止事項を読まれると、管理人さんは、コード作成依頼は好ましく思っていないようです。
基本的な考え方は次のとおりかと思います。
・祝日、曜日の判定や
・スタート時点のB,C
は既知であるとすれば、
(1)2日目以降の各日について、
・休日、祝日はスキップ
・土曜はBのみ配置
・それ以外はB,Cを配置
ということですね。
(2)書き込み先の対象者(の行番号)の特定に関しては、以下。
B、Cそれぞれについて、直近の対象者の行番号を変数に持ち、
・それに1を加算
・もし17(行目)なら8に修正
・Bの行とCの行が重なったら、Bの行をさらに一行進める(17行目の扱いも同様)
とすれば、新たな書き込み先の行が確定できます。
まずはご自分でトライしてみてはいかがですか?
詰まったところで、再度質問をされたらいかがですか?
まったく途中で構いませんから、そこまでのコードを示してください。