からくちさんの姿が見えないので、代打としてくまぷーが・・・
・・・と言っても、禁止関数の条件を完全に無視した
何でもありのアリアリモードなので・・・
その代わりと言ってはなんですが
いつもは、ただ式を掲示しているだけなんですが
それでは、常連さん以外は何だか全然わからないとおもうので
くまぷーの考え方を順を追って説明します。
1.まずA5に表示された数値をB5から、1文字ずつ表示する。
=MID($A5,COLUMN(A1),1)
上式をB5に入力して右方向にコピペ。
2.A5の数値の小数点の位置を求めて、それがR5に来るように平行移動する。
平行移動するためにA5の数値の左側にスペースを加えて調整する。
A5の数値が-12345.6789であれば、この数値の左側にスペースを
10個つけてやれば良い。
3.それでは補充するスペースの数をどうやって求めるか?
小数点の左側に何文字あるかを求めて、16から引けばよい。
16というのはB5からQ5までのセルの数だ。
すると必要なスペースを左側に補充した数字の式は
=REPT(" ",16-LEN(INT($A5)))&$A5 となる。
よって求める式は・・・
=MID(REPT(" ",16-LEN(INT($A5)))&$A5,COLUMN(A1),1) (49文字)
・・・となる。
ここで上式のCOLUMN(A1)をCOLUMN()にして少々短縮すると
=MID(REPT(" ",17-LEN(INT($A5)))&$A5,COLUMN(),1) (47文字)
・・・となる。
私の60です
{=MID(REPT(" ",17-SEARCH(".",$A5&"."))&$A5,SUM($A6:A6+1),1)}
皆さん同じかな?
禁止関数使ったのは53どまりでした。
なぜか、Int+Len思いつかなかったです。
=MID(REPT(" ",17-FIND(".",$A5&"."))&$A5,COLUMN(A1),1)
投稿情報: y sakuda | 2014年1 月12日 (日曜日) 午後 08時03分
60はやはり同じでした、、
スペースは気が引けたので63を・・・
{=MID($A5,TEXT(SUM($A4:A4-1,17-SEARCH(".",$A5&".")),"99;0"),1)}
>Int+Len思いつかなかったです。
これでやったのですがズレるケースがあったので、51
=MID(REPT(" ",18-FIND(".",$A5&"."))&$A5,COLUMN(),1)
投稿情報: む印 | 2014年1 月12日 (日曜日) 午後 08時14分
すみません。
私の式ではむ印さん、ご指摘のように
-9.1などで小数点の位置がずれてしまいました。m(__)m
投稿情報: くまぷー | 2014年1 月12日 (日曜日) 午後 08時15分
なるほど、63ってのはそういうのか。
どうもTextがらみは思いつかないし、思いついてもうまく行かない^^;
投稿情報: y sakuda | 2014年1 月12日 (日曜日) 午後 08時24分
◆惜しかったなぁ~
66{=MID($A5,TEXT(SUM($A4:A4+1)-17+SEARCH(".",$A5&"."),"0;99;99"),1)}
投稿情報: maron | 2014年1 月12日 (日曜日) 午後 08時29分
int関数ではなくてTrunc関数にしなければ
ならなかったんですね。
=MID(REPT(" ",17-LEN(TRUNC($A5)))&$A5,COLUMN(),1)
すると2文字増えて49文字か・・・
投稿情報: くまぷー | 2014年1 月12日 (日曜日) 午後 08時31分
>Truncでもダメな場合があるんですよね。
今回はまいりました。
65{=MID($A5,TEXT(SEARCH(".",$A5&".")+SUM($A4:A4+1)-17.1,"0;99"),1)}
見た目だけだけど。
60{=MIDB("見た目だけだけど "&$A5,SEARCH(".",$A5&".")+SUM($A4:B4+1),1)}
59{=MIDB("あっているか??"&$A5,SEARCH(".",$A5&".")+SUM(A4:$D4+1),1)}
見た目だけの遊びです。
55{=MIDB("遊びです"&$A5,SEARCH(".",$A5&".")+SUM(B4:$Q4+1),1)}
む印さんのを参考にした誤魔化し
62{=MID($A5,TEXT(18-SEARCH(".",$A5+1%)-SUM($A4:B4+1),"99;0"),1)}
投稿情報: min | 2014年1 月12日 (日曜日) 午後 08時44分
>誤魔化し
そうそう、、危険なので止めましたが
私も一時やりました^^;
投稿情報: む印 | 2014年1 月12日 (日曜日) 午後 08時54分
>Truncでもダメな場合があるんですよね。
なるほど。
-0.1とかがそうか・・・
投稿情報: くまぷー | 2014年1 月12日 (日曜日) 午後 09時59分
>59{=MIDB("あっているか??"&$A5,SEARCH(".",$A5&".")+SUM(A4:$D4+1),1)}
場所を間違えていましたので、一応再度。
{=MIDB("あっているか??"&$A5,SEARCH(".",$A5&".")+SUM(A4:$B4+1),1)}
>-0.1とかがそうか・・・
そうなんですよね。私も言われるまで気が付きませんでした。
それにしても、なりふりかわまずやっても
63{=TRIM(MIDB(JIS($A3)&$A5,SEARCH(".",$A5&".")+SUM($A4:Q4+1),1))}
にしかならない。
ダメだこりゃ。
投稿情報: min | 2014年1 月12日 (日曜日) 午後 10時29分
>=TRIM(MIDB(JIS($A3)&$A5,SEARCH(".",$A5&".")+SUM($A4:Q4+1),1))
これは考えましたねー^^
ただ、式はB列からなので
SUM($A4:P4+1)はSUM($A4:Q4+1)ですね
なるほど、JIS($A3)がJIS($A2)なら
SUM($A4:R4+1)にすればいいのかー、
相変わらず巧いなぁ
投稿情報: む印 | 2014年1 月13日 (月曜日) 午後 08時49分
>ただ、式はB列からなので
>SUM($A4:P4+1)はSUM($A4:Q4+1)ですね
あれっ、スイマセン、、消したつもりが消し忘れました・・・
投稿情報: む印 | 2014年1 月13日 (月曜日) 午後 08時51分
みなさん、、、
すごいですねーーーー
どんな問題でも、、、、解いちゃいますねーーーー
・・・・・・・・・・・・・・・・・・・
いま、、、心が、、、忙しくって・・・・・・
体より、心の忙しさは・・・・・むむーーーですよね、、、
投稿情報: jyo3 | 2014年1 月14日 (火曜日) 午後 07時26分
部活指導で遅くなりました。
これからアップします。
もう少々お待ち下さい。m(__)m
投稿情報: くまぷー | 2014年1 月14日 (火曜日) 午後 08時36分