1155803096 エクセルの関数で教えてください。添付画面で、B列は4月列。列の土、日、月、・・・はweekday関数などでB1の2006年に合わせて表示されています。E列以降も同様になっています。A1は職員数で別シートでcountされています。


さて、お願いですが、C列から職員番号を自動入力させたいのです。(2006年度は1~18ですが、土日は飛ばして、1から18まで続き、18の次は1となります)たとえば、4月3日のセルに1を入力すると少なくとも4月分(C列)に自動で数字が入ってほしいです。なお、土日は22になっていますが、これは別シートにコピペしたあとに【再入力がしやすく職員数より少し多い】番号という意味なので何の数字でもかまいません。C列の続きはE列です。5月1日のセルデータは手動でも4月30日からの自動で表示されてもかまいません。また、D列はC列当番を一日ずらすデータです。ですからセルデータ18の右側には1がセルに入ります。D列の続きがG列となります。

ややこしい説明で申し訳ありません。よろしくお願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2006/08/17 23:13:15
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答3件)

id:namidame No.1

回答回数24ベストアンサー獲得回数1

ポイント30pt

http://q.hatena.ne.jp/1155803096

URLはダミーです。

C4のセルに

=IF(B4="土","土",IF(B4="日","日",IF(C3="土",IF(C2=$A$1,1,C2+1),IF(C3="日",IF(C1=$A$1,1,C1+1),IF(C3=$A$1,1,C3+1)))))

D4のセルに

=IF(C4="土","",IF(C4="日","",IF(C4=18,1,C4+1)))


を入力して、ドラグ&ドロップで下までコピーしてください。

C列、F列の1列目と1が入るべき場所に1を入力すれば結果が出ると思います。

もっとスマートな式があるかもしれませんが、いかがでしょうか。

id:anglar

素早い対応、ありがとうございます。でも、できません。C4のセルに、とかD4のセルに、というのは合っていますか?画面でいうとC4は4月2日のデータになってしまいますけど。あと、【C列、F列の1列目と1が入るべき場所】とはどこですか?また、このままだと、土日で始まる4月はうまくいきませんし、18番のあとが1番になりません。続けてお願いできますか?

2006/08/17 21:29:30
id:zuguimo No.2

回答回数19ベストアンサー獲得回数3

ポイント40pt

こんなのはどうでしょう?

C3に

=IF(OR(B3="土",B3="日"),22,MOD($C$3+A3-COUNTIF($B$3:B3,"土")-COUNTIF($B$3:B3,"日"),$A$1)+1)

これを下にコピーすれば、連続した数字が入ります。

C1 に適当な数字をいれてやれば、1から18までの数が入ると思います。

http://office.microsoft.com/ja-jp/assistance/HA011610311041....

id:anglar

凄いです。C列については完璧!!ぜひ、D列、F列も記述してください。絶対参照部分など、どの部分を直すのかも教えてください。

また、最初の方へ。私の間違いでした。でも、5月以降がうまくいきません。zuguimoさん、ここを借りてすみません。

2006/08/17 21:54:18
id:zuguimo No.3

回答回数19ベストアンサー獲得回数3

ポイント45pt

すみません。

式が違っていました。

=IF(OR(B3="土",B3="日"),22,MOD(C$1+$A3-COUNTIF(B$3:B3,"土")-COUNTIF(B$3:B3,"日"),$A$1)+1)

MOD( の後、参照するのは$C$1でした。

あと、コピーしやすいように絶対参照を変えてみました。

ちなみにD3は、

=IF(OR(B3="土",B3="日"),22,MOD(C$1+$A3-COUNTIF(B$3:B3,"土")-COUNTIF(B$3:B3,"日"),$A$1)+2)

最後の+1を+2に代えればいいと思います。

5月も同様にF1を使って(C1が1ならF1は3)

C3のセルをF3にコピーすれば出来ると思います。

日付のシリアル値をMOD関数で処理して、どうにかすると連続した数が入れられるかもしれませんが、今のところ思いつきませんので後はお任せします。

http://q.hatena.ne.jp/answer

id:anglar

ありがとうございました。完璧です。凄いです。

2006/08/17 23:11:33

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません