[[20040825152249]] 『勤続年数の日数を月数に切上げる』(YO−YO) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『勤続年数の日数を月数に切上げる』(YO−YO)

DATEDIFでの勤続年数は求められるんですが、○年○ヶ月○日の"○日"をゼロ日以外は
○ヶ月に切上げたいのですが・・・。おしえてください。


勤続年数ということは入社日と現在の日付があるということでしょうか?
仮にA1を入社日、B1を現在の日付としたとき、

IF(DATEDIF(A1,B1,"MD")<=0,DATEDIF(A1,B1,"Y")&"年"&DATEDIF(A1,B1,"YM")&"ヶ月",DATEDIF(A1,B1,"Y")&"年"&DATEDIF(A1,B1,"YM")+1&"ヶ月")

ではいかがですか?また見当違いだったらごめんなさい。

ちょっとくどいですね(^^;(かよぺ)


 それならば
 =DATEDIF(A1,B1,"Y")&"年"&IF(DATEDIF(A1,B1,"MD")<=0,DATEDIF(A1,B1,"YM"),DATEDIF(A1,B1,"YM")+1)&"ヶ月"
 でいかがでしょうか?  (あひる)


あひるさん、フォロー頂き有難うございます♪(^-^)(かよぺ)


 別の方がスレをあげてくださって気づいたのですが、
 上記の式ですと1年11ヶ月1日だった場合、1年12ヶ月と表示されてしまいます。
 これだと表記としておかしいと思いますので、修正をしてます。

[[20040826153225]]『勤続年数の日数と月数を切り上げたい』(Yosi)

 こちらに修正版をあげてますので参考にしてください。
 (式をコピペすると○年○ヶ月が()で囲まれますのでいらない場合は
  式の最初の "("& と最後の &")" を削除してください。  (あひる)

ああー、またやらかしました(汗)
あひるさん、本当にお世話をおかけしました。m(..)m 

そこまで確認せずにアップしてしまいました。大変申し訳ありませんでした。(かよぺ)


 いえ!とんでもないです!
 自分も突っ込まれるまで考えてもなかったですから(^^;
 いい勉強になると思っていますので、お気になさらずに!
 (あひる)

あひる様、昨日は本当に有難うございました!
すみません^_^; また教えてください! 昨日教えていただいた式を、違うセルにコピー→貼り付けしたところ、きちんとコピーできるところもあるのですが、”ケ月”がどうしてもでない
ところがあるんです。表示形式も他と一緒で標準になってるし、式も抜けているわけでもないし・・・何故でしょう?

もうひとつ教えてください!自分なりに考えたのですがやはり無理でした(T_T)/~~~
1日→1  1日と5時間→1.5  2日と3時間30分→2.35(当社は有休が30分単位です)

         A   B   C  ・・・・合計   

1 氏名     1  1.5 2.35    ?

合計を求めたいのですが、8時間を1日に繰り上げたいのです。よろしくお願いします!!
(Yosi)


 >、”ケ月”がどうしてもでないところがあるんです。
 上記の件、数式のミスです。すみません。
 "○年0ヶ月"と表示されてもいいのなら下記の数式でお願いします。(これで大丈夫な・・・・ハズ)

="("&IF(AND(DATEDIF(A1,B1,"YM")=11,DATEDIF(A1,B1,"MD")>0),DATEDIF(A1,B1,"Y")+1, DATEDIF(A1,B1,"Y"))&"年"&IF(DATEDIF(A1,B1,"MD")<=0,DATEDIF(A1,B1,"YM"), IF(DATEDIF(A1,B1,"YM")=11,"0",DATEDIF(A1,B1,"YM")+1))&"ヶ月)"

 新しいご質問に関しては現在、考え中です。
 しばらくお待ちいただけますか?(他の方がアップしてくれるかも・・・と期待)
 (あひる)

 連続の書き込みで申し訳ないですが、

         A   B   C  ・・・・合計   

1 氏名     1  1.5 2.35    ?

 このA,B,Cは手入力ですか?(他のデータ参照して計算とかではないですよね?)
 データは文字列ですか?数値ですか?(数値だとありがたいですね・・・)
 (あひる)

できました!有難うございます!でもなぜできるところもあったのに、数式をかえるとできたのでしょうか?
すいません!!お手数かけます^_^;  A,B,Cは数値にします  (Yosi)

 よく分らないのですが・・・
 =IF(MOD(SUM(A1:C1),1)>=0.8,SUM(A1:C1)+0.2,SUM(A1:C1))
 かな?   
 失礼しました・・・浅はかな式を書いてしまいました・・・この式は間違っています。
    m(_ _)m (Hatch)

 A2から上記数字が入ってるとして
 B2 = =IF(LEN(B1*100)=4,MID(RIGHT(B1*100,4),1,2)*8,IF(LEN(B1*100)=3,MID(RIGHT(B1*100,3),1,1)*8,))+MID(RIGHT(B1*100,2),1,1)+RIGHT(B1*100,1)/10
 コピーをして、右にDまで貼り付け
 後は、SUM関数で合計
 ってのは、ダメですか?
 がんばって作りましたが、かっこ悪い^^;
 もしかしたら、配列数式?を使うと一発かな?(まだ配列数式を理解できてない(><))

 先生方、フォローをお願いいたしますm(..)m
 (ぽこ)

 説明ですか・・・(思い切り苦手です・・・・(汗))

 [1] IF(DATEDIF(A1,B1,"YM")=11,"",DATEDIF(A1,B1,"YM")+1&"ヶ月"))
 この部分(月表示の後ろの部分です)を

 [2] IF(DATEDIF(A1,B1,"YM")=11,"0",DATEDIF(A1,B1,"YM")+1))&"ヶ月)" 
 と変更しました。よ〜〜〜く見るとわかるのですが・・・。(要はわかりづらい(^^;)
 ""を"0"に変更して"ヶ月"が一番後ろに来てますね。

 [1]の場合、求めた結果が同じ"1年"でも表示する際に
 繰上げで1年の場合には"(1年)"、きっかり1年の時には"(1年0ヶ月)"
 と表示されてしまい、"ヶ月"のが表示されるセル、されないセルができてしまったのです。

 ----[一応数式(月を表示する部分のみ)の説明]----
 | この違いは、入社日−当日が
 |【11ヶ月1日〜11ヶ月30日(月によっては31日とか28日とか)の間の場合】
 | 日が繰上げとなるので12ヶ月になってしまいますよね?
 | そのときに[1]は""と表示(空白なのでつまりは月は表示ナシ)
 |      [2]は"0"と表示し後ろに"ヶ月"とくっつける(つまり"0ヶ月"と表示)
 | ということなのです。
 |
 | さらに【月も日も0の場合 ○年0ヶ月0日の場合】
 | このときは両方の式ともIF(DATEDIF(A1,B1,"MD")<=0・・・・(数式全体をみてくださいね)
 | という条件に当てはまりますのでDATEDIF(A1,B1,"YM")を表示します。
 | つまり"0ヶ月"を表示しているわけです。
 ----ここまで-----

 ものすごくわかりづらいと思いますが、これが精一杯です。
 おわかりいただけましたでしょうか??(ムリかな・・・)
 ・・・・・ハァハァ(´ω`;A  つ、つかれた
 (精魂尽きたあひる)  ※今日はもう考える力が残っていません・・・・

 提示された入力方法だと入力時及び合計結果表示の際に、混乱が予想できます。
 11.115 の形式で入力するとした場合です。 ←説明上、全角にしました
 ----  --- -
  A     B  C     A:日(整数部分)、B:時間 1時間の場合は 01となる C:5=30分 0分:第3位無
 =SUM(INT(A1),INT(B1),INT(C1))+INT(SUM(MOD(A1,1),MOD(B1,1),MOD(C1,1))/(24/10^2))+MOD(SUM(MOD(A1,1),MOD(B1,1),MOD(C1,1)),(24/10^2))
で計算は、出来ると思います。 (sin)

 >合計を求めたいのですが、8時間を1日に繰り上げたいのです。
 となっているので、正数1=8時間ではないのでしょうか?
 8時間以上は正数に変換?するため、2桁以上はならないかと思いました。。。
 どっちなんだろう?
 ちなみに、配列関数ですると
 =SUM(IF(LEN(A1:C1*100)=4,MID(RIGHT(A1:C1*100,4),1,2)*8,IF(LEN(A1:C1*100)=3,MID(RIGHT(A1:C1*100,3),1,1)*8,))+MID(RIGHT(A1:C1*100,2),1,1)+RIGHT(A1:C1*100,1)/10)
 こうなりました^^;
 上記の数式バーに、マウスを置いて Ctrl + Shift + Enter 
 数式に{}がつけばOK →{数式}

 やっぱり、かっこわるい・・・
 (ぽこ)

 失礼いたしました。
=SUM(INT(A1),INT(B1),INT(C1))+INT(SUM(MOD(A1,1),MOD(B1,1),MOD(C1,1))/0.8)+MOD(SUM(MOD(A1,1),MOD(B1,1),MOD(C1,1)),0.8)
(sin)

 (sin)さんが使ってらっしゃる、INT関数で短縮しました。
 ↑お借りいたします^^;
 =SUM(INT(A1:C1)*8+MID(RIGHT(A1:C1*100,2),1,1)+RIGHT(A1:C1*100,1)/10)
 で、数式バークリック → Ctrl + Shift + Enter 
 配列関数の出来上がり^^
 (ぽこ)

 すいません(><)
 自分で言っておいて、正数に*8をしてました(TT)
 ちょっと待っててください。新たに、考えます
 (はずかし〜ぽこ)

 (sin)さん、参りました(TT)尸~~~
 でしゃばってすいませんm(..)m

 ちなみに、(sin)さんの式を配列関数でするとこうなります^^;
 Ctrl + Shift + Enter  えい!
 {=SUM(INT(A1:C1))+INT(SUM(MOD(A1:C1,1))/0.8)+MOD(SUM(MOD(A1:C1,1)),0.8)}
 (だめぽこ)

 はじめのHatchさんの式 =IF(MOD(SUM(A1:C1),1)>=0.8,SUM(A1:C1)+0.2,SUM(A1:C1))で
合ってるようですけど、なぜ訂正されたのかがわからない(^_^;)
 sinさんの式でいくと足して整数〜整数+0.35までの間が0.2だけ多いようです。(仮に足して6.0<x<6.35までが0.2多い)
 間違ってたらごめんなさいm(_ _)m 
 (川野鮎太郎)

 (sin)さんの式で合っている気がします。
 例:○.△× だとすると
 ○=日数
 △=時間
 ×=分

 ・時間は8時間で1日に繰り上がる。
 ・分は、0or5しかない(30分単位のため)
 以上のことから、(sin)さんの式の /0.8 にて繰り上がっているとおもいますが。。。
 川野さんが言ってる所が、違ってたらすいません^^;
 (一生懸命sinさんフォローのぽこ)

 ぎゃ!どうも大変失礼しました。m(_ _)m m(_ _)m ペコッ
 30分単位を見逃していました。><
 (川野鮎太郎)

 私も人のことが言える立場ではないんですけど・・・
 さっきから、間違ってばかりですから(TT)
 (ぽこ)

 いや・・・30分を見逃したんではなく、大事な8時間で繰り上がりを忘れてますね_/ ̄|○ il||li
 (川野鮎太郎)

 入力が遅いから、衝突しっぱなし。

 ぽこさんフォローしていただきありがとうございます。
川野鮎太郎 様  ←もうお気付きのようですが
 >30分単位を見逃していました。
 0.6+0.6+0.6 こっちです。

 ぽこさんが配列式に興味をお持ちの様なので、
参考になるか分かりませんが、30分単位を0.03と入力する場合は、
=SUMPRODUCT((A1:C1>=1)*(INT(A1:C1)))+SUMPRODUCT(ISNUMBER(FIND(".",A1:C1,1))*MID(A1:C1,FIND(".",A1:C1,1)+1,1))/8+SUMPRODUCT(ISNUMBER(FIND(".",A1:C1,1))*(LEN(A1:C1)-FIND(".",A1:C1,1)=2)*RIGHT(A1:C1,1))/6/10
合ってる???   (sin)

 はずかし〜〜。
おもいっきり、間違ってま〜す。 誤った回答と言う事で、笑ってやってください。
(sin)

皆さん有難う御座いました。(あひるさんすみませんでした(T_T)/~~~)
会社から帰宅後、食事の支度をしながら拝見していて、なぜか書き込みをしたくても
できず(セキュリティ設定)やっとできました。とても難しい要求をしていたのに
気が付き本当に申し訳ありませんでした。(sin)さんの数式でできたようなきがします。当然のことながら私には難しいので、後でゆっくり勉強します。
本当に皆様感謝!!!です(^^♪  お蔭様で素敵な休暇台帳ができそうです。
(Yosi)


 すみません、スレお借りします。
恥の上塗り覚悟で、訂正したものを上げます。(10分単位対応)
=IF(ISNUMBER(FIND(".",A1:C1,1)),INT((SUM(MID(A1:C1,FIND(".",A1:C1,1)+1,1)*1)+INT(SUM(MID(A1:C1,FIND(".",A1:C1,1)+2,1)*1)/6))/8)+MOD(SUM(MID(A1:C1,FIND(".",A1:C1,1)+1,1)*1)+INT(SUM(MID(A1:C1,FIND(".",A1:C1,1)+2,1)*1)/6),8)/10+MOD(SUM(MID(A1:C1,FIND(".",A1:C1,1)+2,1)*1),6)/100,0)+SUM(INT(A1:C1))
配列数式で確定させるものです。
一応確認しましたが、???。ご指摘等に対しましては、月曜日になります。
(sin)  大変失礼いたしました。

 上記式だと、分=0(例:0.6)の場合
 #VALUE!になってしまいました・・・(T。T)
 (ぽこ)

 これでいかがでしょうか?

 例:○.△× だとすると
 ○=日数
 △=時間
 ×=分
 ・時間は8時間で1日に繰り上がる。
 ・分は1〜6(10分〜60分)10分単位対応

 {=(SUM(INT(A1:C1)*100)+INT(SUM(MID(LEFT(RIGHT(A1:C1*100,2),1)*1,1,1)*1)/8)*100+MOD(SUM(MID(LEFT(RIGHT(A1:C1*100,2),1)*1,1,1)*1),8)*10+INT(SUM(RIGHT(A1:C1*100,1)*1)/6)*10+MOD(SUM(RIGHT(A1:C1*100,1)*1),6))/100}
 もちろん配列数式で(^^)v
 一応確認はしたのですが、なにぶんスマートさに欠けます。。。
 ご指導、ご鞭撻の程よろしくお願いいたします。
 (ぽこ)

 不具合発見(^^;)
 ↑修正しました。
 (ぽこ)

 いつのまにか、質問者の方の >2日と3時間30分→2.35 
 この条件じゃなくなってますね(^_^A;
 (川野鮎太郎)

 私が精根尽きて休みに入っている間に、達人の方々が解決してくださったようですね。
 (期待通りに事が運んでよかった・・・・(´o`))

 あとは自分の説明はちゃんとご理解いただけたのかが、少し不安です。
 あの後、ご質問がないので"理解いただけた"と勝手に思ってますが。
 それではここらで失礼いたします。(あまり内容がなくてすみません・・・)
 (あひる)

 おはようございます。
 >いつのまにか、質問者の方の ・・・・ この条件じゃなくなってますね(^_^A;
ごめんなさ〜い。私が余計な書き込みをしたために。 (反省中)

 >#VALUE!になってしまいました
 MID関数とMOD関数の使い勝手が、ごっちゃになっていました。
適切な引数でないとMOD関数では、エラーになります。私の記憶違いで使用してしまいました。
前レス後、帰宅途中でひょっとしてと危惧はしてましたが、やっぱり・・・ガクッ。
土日に頭の中で考えていた式をアップします。拝見したぽこさんの式と同様の発想です。
=SUM(INT(A1:C1))+INT(SUM(LEFT(MOD(A1:C1,1)*100,1)*1,INT(SUM(RIGHT(MOD(A1:C1,1)*100,1)*1)/6))/8)+MOD(SUM(LEFT(MOD(A1:C1,1)*100,1)*1,INT(SUM(RIGHT(MOD(A1:C1,1)*100,1)*1)/6)),8)/10+MOD(SUM(RIGHT(MOD(A1:C1,1)*100,1)*1),6)/100
Ctrl+Shift+Enterで配列式として確定。

 To ぽこさん
引きづり込んでしまい、余計な時間を費やさせてしまいました。改めて、ごめんなさい。
(鮎太郎さんの様に絵文字が駆使できると良かったけど、無粋な文字だけとは、トホホ)
拝見した式に関しては、小数点1の位と同2位の繰り上がりを別で計算されていますね、
例えば、1.43+1.23+1.13の場合、3.83となりますよ。
  ↑ 決して、『あら探ししたろっ』が目的ではない事は、ご理解ください。

 余談:SUMPRODUCT関数で処理しようとしていた時の事です。
条件を重ねすぎた為だと思いますが、Excelが何度もクラッシュしてしまいました。
配列式は、負荷が掛かり過ぎて、PCに優しくない式の様です。
と同時に、発想を変えたPCに優しい式を組んで上げる事が必要と痛感しました。実際に出来るかは別問題?!
それでは・・ (sin) 

 (YO−YO)さん、すいません。なんだか横道に外れてしまいました^^;
 (sin) さん、ご指摘ありがとうございます。
 >例えば、1.43+1.23+1.13の場合、3.83となりますよ。
 なるほど〜 確かに回答がずれてますね。。。
 繰り上がりがされていませんね^^;A
 "分"の繰り上がりを先に計算するか、(sin)さんのように、同時にするべきでしたね。
 またまた勉強になりました。ありがとうございます。

 >  ↑ 決して、『あら探ししたろっ』が目的ではない事は、ご理解ください。
 もちろんわかっております^^
 こちらとしては、ご指摘いただいたことで改めて勉強になりましたので
 感謝をしております。m(..)m

 (ぽこ)

 またまたゴメンナサイ!
不具合を発見。まず自分のを見ぃー。って感じです。
1.03等の時に3が時・分で読み取られてしまいます。
TEXT関数で"00"形式の文字列にしました。
↓これでOKなはず。
=SUM(INT(A1:C1))+INT(SUM(LEFT(TEXT(MOD(A1:C1,1)*100,"00"),1)*1,INT(SUM(RIGHT(TEXT(MOD(A1:C1,1)*100,"00"),1)*1)/6))/8)+MOD(SUM(LEFT(TEXT(MOD(A1:C1,1)*100,"00"),1)*1,INT(SUM(RIGHT(TEXT(MOD(A1:C1,1)*100,"00"),1)*1)/6)),8)/10+MOD(SUM(RIGHT(TEXT(MOD(A1:C1,1)*100,"00"),1)*1),6)/100
Ctrl+Shift+Enterで配列式として確定。
(sin)


 みなさん本当すごいですね。休み明け職場で再度見て痛感してしまいました。レベルが高くて
もっと勉強してからではないとついていけない自分が悲しい(T_T)/~~~
あひるさん遅くなってごめんなさい!自宅ではゆっくり考えることができなかったので、
職場で、あひるさんが一生懸命説明して下さった内容をみて、ちょっとだけわかった点があります。表示されないセルは入社日がみんな1日でした。 入社日−当日(起算日○○年1月1日としてます)で、0日となるので○ケ月に繰り上がらず表示されなかったのでしょうか?
(すいません。まだ理解できていなくて・・・(:_;))   (Yosi)

 話しは終わってますが。。。
 これで、繰り上がりの問題も解決しました。たぶん。。。
 配列数式で確定
 =(SUM(INT(A1:C1))*100+INT((MOD(SUM(LEFT(RIGHT(A1:C1*100,2),1)*1),8)*10+INT(SUM(RIGHT(A1:C1*100,1)*1)/6)*10)/8)*10+INT(SUM(LEFT(RIGHT(A1:C1*100,2),1)*1)/8)*100+MOD(SUM(RIGHT(A1:C1*100,1)*1),6))/100
 (ぽこ)

 Yosiさん、遅くなりました。
 >入社日−当日で、0日となるので○ケ月に繰り上がらず表示されなかったのでしょうか?
 そうです。その通りです。
 引き算して、0日になるときと1日以上の時の処理を分けていて、
 しかも処理の仕方が同じでない("ヶ月"を表示するかしないか)為起こりました。
 勉強不足で混乱させてしまい、大変申し訳なかったですm(_ _)m

 自分の説明で少しはご理解いただけたようで安心しました。
 (あひる)

 衝突してました。あひるさんが、いらっしゃいましたので、
式を検証する為の参考意見という事で、修正したものをアップします。
押し売りではありませんし、的はずれかも知れませんが、ご覧下さい。

 私なら【こう確認するかな】という方法(↓)を。
A3以下に開始日を入力し、B1セルに終了日を入れるとして
B2:Y→(終了-開始の)年数、C2:YM→(同じく)1年未満の月数、D2:M→(同じく)月換算数、
E2:MD→(同じく)1ヶ月未満の日数、F2:D→(同じく)日換算数 として
B3に =DATEDIF($A3,$B$1,"Y") と入力し、F3までコピー。
C3,D3,E3,F3セルの"Y"をそれぞれ"YM","M","MD","D"に修正します。("M"と"D"は、おまけ)
H3にあひるさんの式を入れて(A1をA3に、B1を$B$1に修正 をお忘れなく)、B3:H3を下方コピー。
これで、A列に異なる日付を入力してゆくと、式の結果を検証しやすいと思います。
特に終了日近辺の月や日をA列に入力し、Y、YM、MDの列の数字の変化と、
あひるさんの式内の途中結果等を追うと理解しやすいかも。

 ライブラリのDATEDIF関数の部分リンク(↓)しておきます。
https://www.excel.studio-kazu.jp/func/datedif.html

 ぽこさん確認しました。お疲れ様でした。
ただ、文字列関数の戻り値がなぜ?でも計算は合う。??? ← 自己研究材料です。
(sin)

 >文字列関数の戻り値がなぜ?でも計算は合う。???
 文字列関数の値に"*1"をしてるので、数字化されるってのは答えになりませんでしょうか?
 自分でもわからずに過去の先生方の回答を応用しました^^;
 (ぽこ)

 謎が解けました。入力する値を間違えていたようです。
実際に適用する値かどうかは別として、
0.03+1.1+10.53でお試しください。
私が引っかかってたのは、LEFT(RIGHT(0.03*100,2),1)の部分です。 (sin)

 なるほどです!
sinさんありがとうございます。あひるさんとんでもないです!とてもわかりやすい説明でした。
まったく無知な私でも少し理解できたのですから・・・
出社後仕事の合間を見ながら、sinさんとぽこさんのやりとりを何度も読み返し理解しようと試みましたが
配列関数についてはやはり無理でした(T_T)/~~~
でもこれからがんばります!!  これからもよろしくお願いします(^^♪
(Yosi)

 (Yosi)さん、お邪魔ばかりしてすいませんm(..)m
 (sin)さん、いつもご指摘ありがとうございます。本当に勉強になり感謝してます^^

 なるほど、今回もミスをしていますね・・・
 いろいろな状況で、確認したつもりではあるのですが。。。トホホホ

 TEXT関数で対処しました。ご確認いただいてよろしいでしょうか?

 =(INT(SUM(RIGHT(A1:C1*100,1)*1)/6)*10+MOD(SUM(RIGHT(A1:C1*100,1)*1),6)+INT(SUM(LEFT(TEXT(RIGHT(A1:C1*100,2),"00"),1)*1)/8)*100+MOD(SUM(LEFT(TEXT(RIGHT(A1:C1*100,2),"00"),1)*1),8)*10+SUM(INT(A1:C1))*100)/100

 またおかしな所がありましたら、勉強させてください。
 (ぽこ)

 ぽこさ〜ん。忘れ物ですよー。
 >例えば、1.43+1.23+1.13の場合、3.83となりますよ。
Yosiさんへ
配列関数(配列式)に関してですが、確かに難しいです。ただ、理屈が解れば結構使い勝手良いですよ。
今回出ている式の一部で少し解説をば・・・
A1:1.43 B1:1.23 C1:1.13 とした場合、
式1:{=SUM(RIGHT(A1:C1*100,1)*1)} は、
式2:=SUM(RIGHT(A1*100,1)*1,RIGHT(B1*100,1)*1,RIGHT(C1*100,1)*1)
と同じです。
式2の意味は、A1セル(1.43)を100倍(143)した値の右側1文字(3)を数値化(*1)したものと、
同様にB1・C1を100倍し、右側1文字を数値化した3つの値を合計(9)する。
式1では、上記の表現が、A1:C1のセルの値をそれぞれ100倍し、
それぞれの値の右側1文字を数値化させた値をSUMする。
というニュアンスの違いかな???
※他の式も同様に分解して式にして考えると分かりやすいかと思います。
 (sin)  説明になってる?

 sinさんご説明ありがとうございます!!
分解して考えるとわかりやすいですね。数式がずらーっと並ぶとつい圧倒されてしまいダメだーと
諦めモードになってしまう。
ぽこさん、お邪魔だなんてとんでもない!!
熱心さが伝わってきます。私もくじけずがんばろうという気持ちになります。
これからは、分解してひとつひとつくじけないで理解していこうと思います!(^^)!
(Yosi)


 (sin) さん、完成しました^^;
 >熱心さが伝わってきます。
 (Yosi)さん、ありがと〜
 ということで、もう1回チャレンジ!!

 もう、頭の中がグチャグチャになっちゃって。。。
 計算用に作ったセルもグチャグチャで、配列関数にしてあったりしてなかったり。。。
 頭の中で、小数点が行ったり来たり。繰り上がったり・・・(TT)

 多分(本当かな?)出来ました。

 配列関数でお願いします。

 =(SUM(INT(A1:C1))*100+INT((SUM(LEFT(TEXT(RIGHT(A1:C1*100,2),"00"),1)*1)*10+INT(SUM(RIGHT(A1:C1*100,1)*1)/6)*10)/80)*100+MOD(SUM(LEFT(TEXT(RIGHT(A1:C1*100,2),"00"),1)*1)*10+INT(SUM(RIGHT(A1:C1*100,1)*1)/6)*10,80)+MOD(SUM(RIGHT(A1:C1*100,1)*1),6))/100

 申し訳ないですが、確認してみてくださいm(..)m
 (ぽこ)

 Yosiさん。多少でもお役に立てた様で良かったです。
この学校に質問されている例を自分なりに解いて、回答されたものと比べてみたり、
回答されたものを自分で再現してみるのも勉強になるかと思います。
 読むだけでは、しっかりとは身につかない様な気もします。←人それぞれではありますが。

 あと、ご存知とは思いますが、式の入っているセルを選択し、
数式バーの左にある『fx』または『=』の部分をクリックすると窓が出てきます。
数式バー内の任意の関数部分でクリックすると【(その)関数の引数】が、分かります。
私はこの機能を結構重宝してます。※入力時にこれを使うとめんどっちぃ気がします。

 ぽこさんに拍手〜。お疲れ様でした。
小数点以下での処理や計算は、私も嫌いです。多分、弥太郎さんも。。。
あの時は、頭がバクハツしそうでした。
しかも、今回もそうでしたが、内容を完全に把握していない為、余計に混がらがって・・・
ぽこさん。余計なレスにお付き合い下さり、ありがとうございました。
(sin)

 よかった〜 大丈夫そうですね^^;
 いや〜 一事はどうなる事かと思いました。。。

 (sin)さんに、拍手までもらえるとは、、、光栄です!!
 (何気に、学生時代や会社で良い成績を取るよりうれしいかも(笑))
 (ぽこ)

 >多分、弥太郎さんも。。。
 なんじゃ、これ。
 この界隈じゃ小数点の「弥太」とおそれれれて・・・ あれっ、恐れられて・・・、
 か、CONCATENATE まんねんで。 (笑)
 まあ、こんなおもろいスレは見とるだけでも愉快になりまスし、好きでス。
 皆しゃん、ご苦労はん。次はワチキも寄せてネ。(笑)
     (弥太郎)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.