◇-?12月と1月の曜日表示がうまくいかない-you(初)-12/16-12:16(3162)-No.512914 ┣?!Re:12月と1月の曜日表示がうまく...-c-koban-12/16-16:21(3158)-No.512915 ┃ ┗?!!Re:12月と1月の曜日表示がうま...-you-12/16-16:47(3157)-No.512916 ┃ ┗?!!!Re:12月と1月の曜日表示がうま...-ZONE-12/16-19:34(3154)-No.512918 ┃ ┗?!!!!Re:12月と1月の曜日表示がう...-you-12/16-22:08(3152)-No.512919 ┃ ┗?!!!!!Re:12月と1月の曜日表示がう...-ZONE-12/17-06:38(3143)-No.512920 ┃ ┗?!!!!!!Re:12月と1月の曜日表示が...-you-12/17-13:47(3136)-No.512922 ┃ ┗?!!!!!!!Re:12月と1月の曜日表示が...-ZONE-12/17-15:45(3134)-No.512923 ┗?!削除...-o6asan-12/16-18:52(3155)-No.512917
512914 | 12月と1月の曜日表示がうまくいかない | you(初) | 2013/12/16-12:16 |
メーカー名:自作PC 作ってもらった e111 OS名:Windows7 パソコン名:E113 -- excelで、セルM4に平成〜年、セルN4に月、N列の各セルに日にち、そのとなりに曜日が表示され、 曜日のところには =IFERROR(CHOOSE(WEEKDAY(DATEVALUE($M$4&IF($N$4-1=0,12,$N$4-1)&"月"&$N12&"日")),"日","月","火","水","木","金","土"),"-") ↑の関数が入っているのですが、これだと12月と1月の曜日が正しく表示されません。 どこを直したらよいのか教えてください。 |
512915 | Re:12月と1月の曜日表示がうまくいかない | c-koban | 2013/12/16-16:21 |
記事番号512914へのコメント you(初)さんは No.512914「12月と1月の曜日表示がうまくいかない」で書きました。 =IFERROR(CHOOSE((WEEKDAY(DATEVALUE((IF($M$4-1=0,12,$M$4-1)&"年"&IF($N$4-1=0,12,$N$4-1)&"月"&$O4&"日")))),"月","火","水","木","金","土","日"),"-") これでどうでしょう? |
512916 | Re:12月と1月の曜日表示がうまくいかない | you | 2013/12/16-16:47 |
記事番号512915へのコメント c-kobanさんは No.512915「Re:12月と1月の曜日表示がうまくいかない」で書きました。 回答ありがとうございます。 やってみたのですが、 うまくいきませんでした。 説明不足で申し訳ありませんが、N列の日にちは 11日から始まって、10まで入っているのです。 なので、12月というのは11月11日〜12月10日までのことなのです。 初めに載せた数式だと、12月1日の曜日表示が━で出てしまいます。 いろいろ申し訳ありませんが、 どうぞよろしくお願いいたします。 |
512918 | Re:12月と1月の曜日表示がうまくいかない | ZONE | 2013/12/16-19:34 |
記事番号512916へのコメント youさんは No.512916「Re:12月と1月の曜日表示がうまくいかない」で書きました。 >説明不足で申し訳ありませんが、N列の日にちは >11日から始まって、10まで入っているのです。 >なので、12月というのは11月11日〜12月10日までのことなのです。 1.年補正(1月の11日〜月末日までは前年) 1月で11日以上の場合は年から1を減算する, それ以外は補正無し。 2.月補正(11日〜月末日までは前月,1日〜10日までは当月) 11日以上で1月の場合は月を12月に置換する, 11日以上で1月以外時は月から1を減算する, それ以外は補正無し。 3.日補正 補正無し。 のように、正確な当日年月を求めるよう数式化すれば期待通りの結果が得られます。 例)O5セルの数式 =TEXT(IF($N5>=11,EDATE(DATE(1988+$M$4,$N$4,$N5),-1),DATE(1988+$M$4,$N$4,$N5)),"aaa") |
512919 | Re:12月と1月の曜日表示がうまくいかない | you | 2013/12/16-22:08 |
記事番号512918へのコメント ご回答ありがとうございます。 関数に不慣れで大変申し訳ないのですが、 >例)O5セルの数式 >=TEXT(IF($N5>=11,EDATE(DATE(1988+$M$4,$N$4,$N5),-1),DATE(1988+$M$4,$N$4,$N5)),"aaa") 矢印で表示可能になったのですが、一か月が28日や30日の場合存在しない31日などの日を空欄にするには、更に何を加えればよいのでしょうか? かさねがさね申し訳ありませんが、教えてください。 |
512920 | Re:12月と1月の曜日表示がうまくいかない | ZONE | 2013/12/17-06:38 |
記事番号512919へのコメント youさんは No.512919「Re:12月と1月の曜日表示がうまくいかない」で書きました。 >矢印で表示可能になったのですが、一か月が28日や30日の場合存在しない31日などの日を空欄にするには、更に何を加えればよいのでしょうか? では、発想を変えて日と曜日を大小の月,閏年を加味して表示するのはいかがでしょう。 M4:和暦(平成)年号入力 N4:月入力 N5〜N25:前月11〜31日の日を表示(毎月29〜31日の存在しない日は空白にする) N26〜N35:当月1〜10日の日を表示 O5〜O35:N列同行に対応する曜日を表示(毎月29〜31日の存在しない日は空白にする) それぞれのセルの数式 N5:=EDATE(DATE(1988+$M$4,$N$4,11),-1) O5:=$N5 N6:=$N5+1 O6:=$N6 ↓ N22:=$N21+1 O22:=$N22 N23:=IF($N22="","",IF(DAY($N22+1)=1,"",$N22+1)) O22:=$N23 N24:=IF($N23="","",IF(DAY($N23+1)=1,"",$N23+1)) O23:=$N24 N25:=IF($N24="","",IF(DAY($N24+1)=1,"",$N24+1)) O24:=$N25 N26:=DATE(1988+$M$4,$N$4,1) O26:=$N26 N27:=$N26+1 O27:=$N27 ↓ N35:=$N34+1 O35:=$N35 N5〜N35の書式:ユーザー定義で種類に「d」を入力 O5〜O35の書式:ユーザー定義で種類に「aaa」を入力 |
512922 | Re:12月と1月の曜日表示がうまくいかない | you | 2013/12/17-13:47 |
記事番号512920へのコメント ご回答ありがとうございます。 助かりました。 何度も申し訳ないのですが、 一番初めの時、曜日のセルには書きの数式が入っていました。 =IFERROR(CHOOSE(WEEKDAY(DATEVALUE($M$4&IF($N$4-1=0,12,$N$4-1)&"月"&$N12&"日")),"日","月","火","水","木","金","土"),"-") そして、 教えていただいたように下記の数式を入れました。 N5:=EDATE(DATE(1988+$M$4,$N$4,11),-1) O5:=$N5 N6:=$N5+1 O6:=$N6 ↓ N22:=$N21+1 O22:=$N22 N23:=IF($N22="","",IF(DAY($N22+1)=1,"",$N22+1)) O22:=$N23 N24:=IF($N23="","",IF(DAY($N23+1)=1,"",$N23+1)) O23:=$N24 N25:=IF($N24="","",IF(DAY($N24+1)=1,"",$N24+1)) O24:=$N25 N26:=DATE(1988+$M$4,$N$4,1) O26:=$N26 N27:=$N26+1 O27:=$N27 ↓ N35:=$N34+1 O35:=$N35 N5〜N35の書式:ユーザー定義で種類に「d」を入力 O5〜O35の書式:ユーザー定義で種類に「aaa」を入力 すると、べつのセルで下記の数式(土日を抜いた実稼働日数をカウントする、Pは稼働時間を入れるセル) =NETWORKDAYS($D$2,$D$4)-COUNTIF($M$9:$M$39,"○")-R$45+COUNTIFS(R$9:R$39,">0",$O$9:$O$39,"土")+COUNTIFS(R$9:R$39,">0",$O$9:$O$39,"日")+COUNTIFS(R$9:R$39,">0",$M$9:$M$39,"○") があり、#value!となります。 実稼働日数をカウントする式をどのように変更したらよいのでしょうか? 何度もすみませんが、教えてください。 |
512923 | Re:12月と1月の曜日表示がうまくいかない | ZONE | 2013/12/17-15:45 |
記事番号512922へのコメント youさんは No.512922「Re:12月と1月の曜日表示がうまくいかない」で書きました。 曜日(O5〜O35(実際はO9〜O39))は日付(シリアル値)を書式設定で曜日表示させているため 他で曜日の文字列として扱おうとすると違った結果になります。 日(N5〜N35(実際はN9〜N39))を他で参照しないのであれば、曜日(O5〜O35(実際はO9〜O39))の 数式を以下にしてください。 O5:=TEXT($N5,"aaa") ↓ O35:=TEXT($N35,"aaa") O5〜O35の書式:標準または文字列にする 日(N5〜N35(実際はN9〜N39))は固定値(11〜31,1〜10)として曜日だけを数式で表示 したい場合は曜日(O5〜O35(実際はO9〜O39))の数式を以下にしてください。 #No.512918の補正説明をそのまま数式化しただけ O5:=IFERROR(CHOOSE(WEEKDAY(TEXT(IF($N$4=1,IF($N5>=11,1988+$M$4-1,1988+$M$4),1988+$M$4),"0000")&"/"&TEXT(IF($N5>=11,IF($N$4=1,12,$N$4-1),$N$4),"00")&"/"&TEXT($N5,"00")),"日","月","火","水","木","金","土"),"-") または、 O5:=IFERROR(TEXT(DATEVALUE(TEXT(IF($N$4=1,IF($N5>=11,1988+$M$4-1,1988+$M$4),1988+$M$4),"0000")&"/"&TEXT(IF($N5>=11,IF($N$4=1,12,$N$4-1),$N$4),"00")&"/"&TEXT($N5,"00")),"aaa"),"-") O5の書式:標準または文字列にする 追記 日(N5〜N35(実際はN9〜N39))は固定値とした場合、以下のようにしても可。 O5:=TEXT(EDATE(DATE(1988+$M$4,$N$4,$N5),-1),"aaa") ↓ O22:=TEXT(EDATE(DATE(1988+$M$4,$N$4,$N22),-1),"aaa") O23:=IFERROR(TEXT(DATEVALUE(TEXT(IF($N$4=1,1988+$M$4-1,1988+$M$4),"0000")&"/"&TEXT(IF($N$4=1,12,$N$4-1),"00")&"/"&TEXT($N23,"00")),"aaa"),"-") O24:=IFERROR(TEXT(DATEVALUE(TEXT(IF($N$4=1,1988+$M$4-1,1988+$M$4),"0000")&"/"&TEXT(IF($N$4=1,12,$N$4-1),"00")&"/"&TEXT($N24,"00")),"aaa"),"-") O25:=IFERROR(TEXT(DATEVALUE(TEXT(IF($N$4=1,1988+$M$4-1,1988+$M$4),"0000")&"/"&TEXT(IF($N$4=1,12,$N$4-1),"00")&"/"&TEXT($N25,"00")),"aaa"),"-") O26:=TEXT(DATE(1988+$M$4,$N$4,$N26),"aaa") ↓ O35:=TEXT(DATE(1988+$M$4,$N$4,$N35),"aaa") O5〜O35の書式:標準または文字列にする |
512917 | 削除 | o6asan | 2013/12/16-18:52 |
記事番号512914へのコメント 投稿者によって消されました。 |