• 締切済み

チェックを入れて表示先を決めたい

月のタイムシートを作成していて、今までは全てが手入力だったので、出勤時間と退勤時間と休憩時間を入力したら、平日残業時間(Q)の欄に値が表示又は、深夜労働時間が発生した時にも(R)欄に自動計算で表示するようにしたり、年度や月の値を変更したら、日付と曜日が連動するようにしています。 今回、下記の事で困っています。 土曜日や日曜日、祝日などに出勤した場合、それぞれの時間(出勤時間、退勤時間、休憩時間)を入力した時の表示先が、平日残業時間(Q)欄になっています。 それで、曜日欄の右側に出勤チェック欄(D)欄を追加して、ココにチェックしたら、(Q)欄または休日出勤(S)欄に表示出来るようにしたいのですが、 ※年月を変更したら、日付と曜日が自動で変わるようにしてあるので、連動出来れば幸いです。 どなたか教えてください

この投稿のマルチメディアは削除されているためご覧いただけません。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

画像がぼやけて、表の上部の見出し部分の文字が見えにくい。質問には参考にならない。 安易に画像を張り付けず、文章で質問を説明する方法があるだろうと思う。 画像を使うのは、質問には必要のない情報も見せてしまって、どこを見るべきかポイントがわからない、欠点もある。 こういうパターンの質問が多いのでOKWAVEは手を打つべきだろう。 ーー 下記の小生の表現を参考にしてみたら。 表題も、私なら、「引いてくる値を、セルの値によって変えたい」とするが、誤解しているかな。 ーー 下記は列や行やデータは、本当がわからないので」、でたらめでしょうから注意。意図をくみ取ってください。 関数を使って求めるデータを入れるとすると、最初のデータ行が第10行として、 土曜日の場合にはK列、日曜日の場合L列、平日の場合はM列のデータを、E列のセルに入れる場合は、 B列に曜日が文字で入っているとして、(書式のaaaを使っていないとして、(この注記が必要な理由がわかるかな)) 例データ B10 土 B11 日 B12 月 ・・ ーー K、L、M列の第I、臺2に行にそれぞれ参照する基準データなどがあるとして 土 日 平日 <--注記用 11 12 13 が入っているとする ーー E10列に求めるデータを入れるとして =IF(B10="土",K$2,IF(B10="日",L$2,M$2)) 下方向に式を複写する。結果B10-B14とE10-E14は 土 11 日 12 月 13 火 13 水 13 持ってくる列が、土、日、平日で誓う場合は H10セルに、=IF(B10="土”,K1,"") S10セルに、=IF(B10="日”,L1,"") C10セルに、=IF(B10=NOT((OR("日”,"土")),M10,"") ーー 場合によっては、WEEKDAY関数の1-7のコードを、別の値に置き換えるため、CHOOSE関数が使えるかもしれない。 ーー 場合分けが多い場合は、かつ条件が「文字列や数値である場合」は、VLOOKUP関数ででもできるかもしれない。 1の場合はa,2の場合はb、・・とケースが多い場合。対応表を作ってVLOOKUP関数を使う。 また「仕事に」エクセルを使うのだからVBAを勉強したらどうかな。

回答No.2

おこがましいと思いつつ、考え方から整理します。 > 出勤チェック欄(D)欄を追加して、ココにチェックしたら、 > (Q)欄または休日出勤(S)欄に表示出来るように エクセルの一般機能には「ここがこうだから、あそこはこう」という機能はありません。 「あそこがああだから、ここはこう」という関数を使います。 IF関数を利用して   =IF(どこがどうだったら,こう,(違ったら)どう) という感覚です。 ここまでくると日本語のニュアンスの問題ですが、重要なポイントです。 さてさて、実際のところ > 出勤チェック欄(D)欄を追加して、ココに"チェック" とはどのようになさるのでしょう? 「レ」を打ち込む?簡単に「1」を入力?チェックボックス連動? 色々ありますので、解説しきれません。 幸い、 > 日付と曜日が自動で変わるようにしてある ようですので、ここにWEEKDAY関数を使用しているものとして進めます。  =WEEKDAY(数値,2) としてやることで「月曜日=1~日曜日=7」を返すという使い方ができます。 これをIF関数と組み合わせて  平日の残業のセル:=IF(WEEKDAY(日付)<6,残業の計算式,"")  平日以外の残業のセル:=IF(WEEKDAY(日付)>=6,残業の計算式,"") としてやり、数値の表示形式を「[h]:mm」にしてやります。 祝日の判断も同様にIFで可能です。 ですが、祝日判定をどのようにしているか不明ですので、式は提示しません。 なお、COUNTIF関数を使用するのが考えやすいとだけ、補足しておきます。 ※方眼紙状態でセル番地を読むのが面倒なので、まったく読んでいません。  ご了承くださいませ。 まったくの蛇足で申し訳ありませんが、 「PRTSC」キー(キーボードによって微妙に違うかも)を押してやると、 クリップボードに「現在の画面表示」を格納できます。 MS-PAINT(ペイント)などに貼り付けることで スクリーンショットとして保存可能です。

  • ushi2015
  • ベストアンサー率51% (241/468)
回答No.1

こんにちは 平日残業時間(Q)欄、休日出勤(S)欄に数式がセットされているなら、 曜日のセルが土日かどうかを判定するIF文を追加すればいいのでは?

関連するQ&A