• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルで3つ聞きたい事があります。)

Excel質問:エクセルの作業記録シートの表示方法について

このQ&Aのポイント
  • 3つの質問:作業着手日と作業期限の表示方法、小数点以下1桁の表示方法、効率的なデータの反映方法
  • エクセルの作業記録シートを作成し、毎日の作業内容を記載したい。しかし、作業着手日と作業期限を記載しないと不正な表示がされてしまう。どのように表示しないようにできるか知りたい。
  • 作業記録シートのウィンドウを固定せずに記載したい項目に小数点以下1桁まで表示したいが、正しく表示されない。どのようにすれば正しく表示できるか知りたい。

質問者が選んだベストアンサー

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! お示しのExcelファイルの「トータル」Sheetは4月・5月だけになっていますが、 同じ配列でその後も6月・7月・・・と規則正しく下へ続いているとします。 4月分について 「トータル」SheetのE3セルに =IF(OFFSET(INDIRECT(A$1&"!A1"),3,MATCH(B3,INDIRECT(A$1&"!$1:$1"),0)+1)="","",OFFSET(INDIRECT(A$1&"!A1"),3,MATCH(B3,INDIRECT(A$1&"!$1:$1"),0)+1)) F3セルに =IF(OFFSET(INDIRECT(A$1&"!A1"),3,MATCH(B3,INDIRECT(A$1&"!$1:$1"),0)+6)="","",OFFSET(INDIRECT(A$1&"!A1"),3,MATCH(B3,INDIRECT(A$1&"!$1:$1"),0)+6)) という数式を入れ、E3・F3セルを範囲指定 → F3セルのフィルハンドルで「16番目」の18行までコピーしてみてください。 5月分は E26セルに =IF(OFFSET(INDIRECT(A$24&"!A1"),3,MATCH(B26,INDIRECT(A$24&"!$1:$1"),0)+1)="","",OFFSET(INDIRECT(A$24&"!A1"),3,MATCH(B26,INDIRECT(A$24&"!$1:$1"),0)+1)) F26セルに =IF(OFFSET(INDIRECT(A$24&"!A1"),3,MATCH(B26,INDIRECT(A$24&"!$1:$1"),0)+6)="","",OFFSET(INDIRECT(A$24&"!A1"),3,MATCH(B26,INDIRECT(A$24&"!$1:$1"),0)+6)) として同じく16行分下へフィル&コピー! このように各月は INDIRECT関数のA列・B列部分が23行ずつ増えるだけです。 ※ 一気にフィル&コピー!という訳にはいかないので、各月の1行目に数式をコピー&ペーストし、 A・B列の行番号部分だけを手作業で手直ししてやる必要があります。m(_ _)m

hicmic99
質問者

お礼

ご丁寧に本当にありがとうございます。 追記までして頂いてとても感謝しています。 みなさんのやり方すべてを試してみます! みなさんの回答、本当に感謝していますがこれだからこうと細かく教えて頂けたのでtomさんの回答をベストアンサーとさせて頂きます。 本当にありがとうございます!

その他の回答 (3)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.4

No.3です。 D列の数式を忘れていました。 D3セルは =IF(OFFSET(INDIRECT(A$1&"!A1"),,MATCH(B3,INDIRECT(A$1&"!$1:$1"),0)+1)="","",OFFSET(INDIRECT(A$1&"!A1"),,MATCH(B3,INDIRECT(A$1&"!$1:$1"),0)+1)) として16行分(18行目まで)フィルハンドルで下へコピー! D26セルは =IF(OFFSET(INDIRECT(A$24&"!A1"),,MATCH(B26,INDIRECT(A$24&"!$1:$1"),0)+1)="","",OFFSET(INDIRECT(A$24&"!A1"),,MATCH(B26,INDIRECT(A$1&"!$1:$1"),0)+1)) として同様に下へコピー! 6月以降も前回書いたように23行ずつ増やして、16行下へコピーしてみてください。m(_ _)m

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.2

(1) 現状 トータル!E3='4月'!C4 トータル!F3='4月'!H4 改善 トータル!E3=IF(INDIRECT(ADDRESS(4,3+14*($B3-1),,,"4月"))="","",INDIRECT(ADDRESS(4,3+14*($B3-1),,,"4月"))) トータル!F3=IF(INDIRECT(ADDRESS(4,8+14*($B3-1),,,"4月"))="","",INDIRECT(ADDRESS(4,8+14*($B3-1),,,"4月"))) (2) 【人工】のセルの書式設定が d人 となってます。 書式を 0.0人 としてください。 (3) ※別月は数式のコピー後に月の部分を変更してください。 トータル!D3=IF(INDIRECT(ADDRESS(1,3+14*($B3-1),,,"4月"))="","",INDIRECT(ADDRESS(1,3+14*($B3-1),,,"4月"))) トータル!E3=IF(INDIRECT(ADDRESS(4,3+14*($B3-1),,,"4月"))="","",INDIRECT(ADDRESS(4,3+14*($B3-1),,,"4月"))) トータル!F3=IF(INDIRECT(ADDRESS(4,8+14*($B3-1),,,"4月"))="","",INDIRECT(ADDRESS(4,8+14*($B3-1),,,"4月"))) トータル!G3=INDIRECT(ADDRESS(6,3+14*($B3-1),,,"4月")) トータル!H3=INDIRECT(ADDRESS(6,7+14*($B3-1),,,"4月")) トータル!I3=INDIRECT(ADDRESS(7,7+14*($B3-1),,,"4月")) トータル!J3=INDIRECT(ADDRESS(7,3+14*($B3-1),,,"4月")) トータル!K3=INDIRECT(ADDRESS(8,4+14*($B3-1),,,"4月")) トータル!L3=INDIRECT(ADDRESS(8,3+14*($B3-1),,,"4月"))

hicmic99
質問者

お礼

教えていただきありがとうございます! 素人にはわかりやすい、とりあえずこうすれば良いとの回答、わかりやすかったです。 回答いただいた方のすべてを試してみます。 ありがとうございます!

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

>トータルのシートで明治33年1月0日(土)と表示されてしまいます セルの書式設定の表示形式のユーザー定義で ggge年m月d日(aaa);;; と設定します >小数点以下1桁まで記載したい セルの書式設定の表示形式のユーザー定義で 0.0人 と設定します >5月、6月… 初心者さんが「見た目だけ」で作ってしまった,一番使いにくい格好になっていますね。 方法1) 4月欄の数式を全て ='4月'!$C$4 ='4月'!$Q$4  : のように,$を付けた数式に修正する 4月欄をコピーし,5月欄に貼り付ける 5月欄のセル範囲を必ず選んだ状態で,Ctrl+Hで置換のダイアログを出し, 4月 を 5月 に全て置換する 方法2) 4月欄の数式を =INDIRECT(A1&"!C4") =INDIRECT(A1&"!Q4")  : のように,INDIRECT関数を使った数式に修正する 4月欄をコピーし,5月欄に貼り付けるとA列の5月の記載を拾って5月シートの値が現れる。

hicmic99
質問者

お礼

ド素人に丁寧に教えて頂き、本当にありがとうございます! 試してみます。 INDIRECT関数、挑戦します! ありがとうございます。

関連するQ&A

専門家に質問してみよう