« 関数で出来ますか~? 第325回 順位の集計 | メイン | 関数で出来ますか~? 第327回  連立方程式 »

2020年5 月 6日 (水曜日)

コメント

min

難易度が下がってやりやすい。
こういう問題いいですね。

maron

◆ところで、順位が同じの時はどうすればいいのでしょうか?

くまぷー

>難易度が下がってやりやすい。
>こういう問題いいですね。

有り難うございます。(^^ゞ

くまぷー

>◆ところで、順位が同じの時はどうすればいいのでしょうか?

考えていなかった。
ちょっと待ってくださいm(__)m

maron

◆取り敢えず、作ってみました、107

くまぷー

>◆ところで、順位が同じの時はどうすればいいのでしょうか?

お待たせしました。
単純に「成績」表の名前欄の順でお願いします。
つまり、つまり一郎と二郎が同点ならば一郎が上という事でお願いします。

くまぷー

>◆取り敢えず、作ってみました、107

いつも早いですね。(*^-^*)

>難易度が下がってやりやすい。
>こういう問題いいですね。

難易度が下がった分、この問題はどこまで短くなるのでしょうか?!

maron

◆順位が同じものが複数ある時、
◆エラーになってもよければ、57

◆エラーを回避すれば、101

くまぷー

>◆エラーになってもよければ、57

やはり、エラーなしが希望です。

maron

◆例えば、2位が2つあれば、一つは2位、もう一つは3位にしました

maron

>一郎と二郎が同点ならば一郎が上です。
◆その条件で、101

くまぷー

>>一郎と二郎が同点ならば一郎が上です。
>◆その条件で、101

注文に従って頂き、感謝です。m(__)m

全員同点ならば一郎、春子、二郎、秋子の順ですね。

y sakuda

じゃ、マクロ入りブック作ったら送ります。

くまぷー

>じゃ、マクロ入りブック作ったら送ります。

よろしくですm(__)m

からくち

あららら、、、最初同じ問題に見えたけど
下まで見ていなかった
問題が新しくなっている

>その条件で、86

からくち

書き忘れ

書き違い

問題お送りしました

84

からくち

3式書いたら、、、80があった
普通1番目に書いたのが最小なのに
今回は3番目だった

くまぷー

>問題お送りしました

いつも有り難うございます。
こちらにて返信、失礼いたします。m(__)m

y sakuda

エラーチェック入りブックおくりました。
念のためHotmailとYahooメイルの両方に送ってあります。

エラー処理等イメージに合っているかどうか確認の上アップ願います。
多分大丈夫だと思いますが。

y sakuda

うーーん、解釈まちがってるのかな?不安になって来た。
そんなに長くならないと思うんだけど・・・・
VBAチェック用に書いたのがエラー処理なしで55、エラー処理ありで60ちょっとだと思ったんだけど。
(新関数は使ってないというより、使おうと思ったけど、使い方調べてる内に面倒になって普通に書いたw)

y sakuda

作業してたブック確認したらエラー処理版、60台ではなかった^^

くまぷー

sakudaさんからファイルを頂きました。

>念のためHotmailとYahooメイルの両方に送ってあります。

両方届いておりました。有り難うございます。m(__)m

>解釈まちがってるのかな?不安になって来た。

いや、大丈夫だと思います。
10000回やってOKでした。m(__)m


くまぷー

今回の問題は・・・

>正直なとこ、Excel97以降で、評価する新関数はIFErrorくらいです

・・・と仰っていたsakudaさんとExcelのベテランさんたちへの挑戦です (^^ゞ

ni

79できました
普通の関数しか知らないし・・・

くまぷー

sakudaさんより頂いたファイルをアップしました。
作業が遅くなってすみません m(__)m

y sakuda

マクロチェック用に作った書き流し73でした。
なんにも変わったことはやってません。

ところで、4人とも0で全員一位ってパターンは、数回検出しましたが、数十万回回しても3人同点ってパターン発生しませんが、発生しないようにしてますか?

シートにプロテクトかかってるから、強引にパターンつくれません。
まあ、パスワードブレークできないことはないのですが、そこまでやってないんで・・・

>Excelのベテランさんたち
私ベテランじゃないです。元々Excel97からですし、VBAオンリーで式の方は身の回りの世話ができるていど^^

ni

少しダイエットして75
関数の使い方は、jyoさんのオリンピックと、ここで教えてもらった程度。

くまぷー

>普通の関数しか知らないし・・・

なんか、たいそうなことを言って申し訳ありませんでした (^^ゞ

以前に比べてパソコン・ソフト関連の雑誌も激減して
エクセル関連の新情報もほとんど注目されなくなったような気がします。

だから、もしも「えっ? そんなのがあるの?」となれば面白いな、と思っています。

y sakuda

3人同点発生しますね。ひっかけ方間違えてた。
ところで、3人同点調べてる内にプログラムのミス発見しました。
実害はなさそうなんですが、気色悪いので10分ほどで再送します。

y sakuda

添付わすれました。
再再送の方でおねがいします。

くまぷー

有り難うございます。m(__)m

アップしなおしました。

y sakuda

>関数の使い方は、jyoさんのオリンピックと、ここで教えてもらった程度。
私はじょー3とこは知りません。
ベテランじゃないから、表計算コンテストも確か最後の方2回くらいしか参加してないし、入賞したこともないです。
VBAの時と合わせてテレホンカード二回くらいもらっただけ。
T先生が言ってたけど、思いっきり配列数式で一行で作った奴、一次審査終わった後確認したら私の最終審査に回したとはいってましたけど。
(審査してるとき、提出者見てる暇はなかったってw)
でも、膨大なものをチェックして結果として、名前知ってるような連中の作品が残る頻度、高かったみたいですね。

くまぷー

>表計算コンテストも確か最後の方

確か最後が2009ですよね。
ついこの前のような、はるか遠い昔のような・・・

y sakuda

最後一回だけだったかな? MSで会った時、「今回で最後だから」って言われて出したような覚えも^^

ところで69です。

出題者解答の予定はどのくらいなんでしょうか?

くまぷー

>出題者解答の予定はどのくらいなんでしょうか?

27です。 (^^ゞ

からくち

>27です
これは新しい関数ですか
同点処理をしなくても50ですので、、、
若し違うなら、、、

くまぷー

>これは新しい関数ですか

そうです。
たぶん、この関数の使い方の「例題」になるのではないかと思います。
実務では得点を基にした「成績優秀者一覧」とか「成績不良者一覧」を一発で作ることができます。

jyo3

ちらっ・・・・
おおーーーすすんでますねーーーー、、、、

いやはや、、、、
①友人の悩み相談
②私の足の問題・・・・・
長引きそうです。

でも、、、たまに、、、ちらっ・・・・と、、、してます。

y sakuda

新しい関数の使い方わかってないから、使っても40台w

くまぷー

>でも、、、たまに、、、ちらっ・・・・と、、、してます。

ものすごく久しぶりって気がします。(^^ゞ

くまぷー

>新しい関数の使い方わかってないから、使っても40台w

ヒマだからいじくって遊んでいたら
あっ、こんなふうに使うんだってカンジです (^^ゞ

くまぷー

新関数が禁止ならsakudaさんの69が最短かな?

y sakuda

僅かに、ダイエット 68
新関数つかったのは47どまりです

kumapu-

>新関数つかったのは47どまりです

報告有難うございます。

ちょっと静かになってしまったような・・・
この問題はまずかったかな・・・
でもExcel Maniacsだから・・・

min

>この問題はまずかったかな・・・
いえいえ、この問題もいい問題だと思います。

エクセルでやってみたら、75にしかなりませんでした。

sakudaさんは68とのこと。
何か盲点があるのかなあと思って、風呂に入ったらなんとなくひらめいた。

で、さっそく風呂上りにやってみたら、
63でした。

くまぷーさんの27は新関数だということですが、
これまでのくまぷーさんの言動から
2007しか持っていないくせに、新関数というものを想像でやってみた。

文字数からしてこういう式なのかも?
というのができました。
動作は確認できないので、あくまでも想像です。

で、解答発表時にくまぷーさんより先に書き込めたら
当たりかどうかぶつけるかも。
でも、恥をかくかも。。

ま、タイミングが合えばですが。

min

sakudaさんの68というのは、どうやっているのか全く不明、興味津々です。

min

で、終わり。

もう少し考えてみますけど、発展しないと思うので終了とさせていただきます。

y sakuda

>どうやっているのか全く不明、興味津々です。
変わったことはなにも。ただ2013では{}がいるとしたら、70ですが・・・

新関数の方、C13⇒G13コピーですが、27
くまぷーさん28ってのは数え違いでは?

くまぷー

>>この問題はまずかったかな・・・
>いえいえ、この問題もいい問題だと思います。

有り難うございます。m(__)m

>で、解答発表時にくまぷーさんより先に書き込めたら
>当たりかどうかぶつけるかも。

minさんが書き込むまで待っています。

くまぷー

★終了宣言

1. minさん
2. 
3. 
4. 

min

くまぷーさんは、27ですよね。

私の63は、あれもこれも同じ文字数にしかなりませんでした。

くまぷー

>新関数の方、C13⇒G13コピーですが、27
>くまぷーさん28ってのは数え違いでは?

すみません。
ご指摘の通り、数え間違えました。
27です。m(__)m

ni

>エクセルでやってみたら、75にしかなりませんでした。
わーい、おんなじだ~・・・と思ったら
>63でした。
・・・orz

終了です

くまぷー

>>出題者解答の予定はどのくらいなんでしょうか?

>27です。 (^^ゞ

よく見たら、もともと27と書いていました。(^^ゞ
sakudaさんはどこをみたのでしょう? (^^ゞ

くまぷー

★終了宣言

1. minさん
2. niさん
3. 
4. 

では今日は寝ます m(__)m

y sakuda

私も68で終了です。

y sakuda

くまぷーさん、最初から27っておっしゃてたんですね。私がどこかで28と思い込んでたみたい。
失礼しました。

くまぷー

お早うございます。

★終了宣言

1. minさん
2. niさん
3. sakudaさん
4. 

あと、お一方ですね。

からくち

相変わらずと言いますか、、、
短縮はどうも苦手です
皆さんより遥かに多いですが、、、74で終了です

からくち

それにしても面白い数値が出ました
4・-4・-4・4
2種でも+-の違いだけで同じ4とは、、、

くまぷー

★終了宣言

1. minさん
2. niさん
3. sakudaさん
4. からくちさん

揃いました。解答書き込み解禁です。

しかし・・・

>で、解答発表時にくまぷーさんより先に書き込めたら
>当たりかどうかぶつけるかも。

sakudaさん、27の書き込みは暫くお待ちください m(__)m

ni

では、最も大きい75から
75{=OFFSET($B$5,MATCH(LARGE(C$6:C$9-ROW(1:4)%,ROW(A1)),C$6:C$9-ROW(1:4)%,),)}

くまぷー

niさん、一番乗り有り難うございます。
office 365だと{ }が不要なので73になります。m(__)m

y sakuda

67ですが、2013では{}が必要かもしれません。
=INDEX($B:$B,RIGHT(SMALL(RANK(C$6:C$9,C$6:C$9)+{6;7;8;9}%,ROW(A1))))

くまぷー

sakudaさん、27文字の書き込みを控えて頂き有難うございます。m(__)m
99%、私のと同じでしょうね (^^ゞ

maron

◆y sakudaさんのRIGHT関数には、まいった!!!
◆やわらか頭ですね

からくち

74と長いので当たり前ですが皆さんと違う式
=LOOKUP(,0/(LARGE(C$6:C$9-C$7:C$10%,ROW(A1))=C$6:C$9-C$7:C$10%),$B$6:$B$9)

y sakuda

>99%、私のと同じでしょうね (^^ゞ
間違えなくw

からくちさんの、同点の時の並び順がまずいのでは?

からくち

>同点の時の並び順がまずいのでは
確認してますが、、、
勿論ですが
>4・-4・-4・4
これも平気でしたよ

ジョー3さん、、、日本人で良かったですね
インドでは酒税は当たり前ですが
お酒にコロナ税が加算されると言う事です
しかも70%、、、きつい

y sakuda

同点の件ですが、例えば、14、-1、-1、-12の時、一郎、春子,二郎、秋子にならなきゃいけないところ、一郎、二郎、春子、秋子のように元表の並び順と逆になることがあります。
行ずらして違いをつけるより、行番号足し引きすれば問題ないかと。

y sakuda

>お酒にコロナ税が加算されると言う事です
>しかも70%、、、きつい
そのニュースは見てないけど、コロナ税って・・・・

min

63
{=OFFSET($B$15,-RIGHT(LARGE(99+C$6:C$9-ROW($1:$4)%,ROW(A1))),)}
もう少し短くなるような気もしますが。

新関数想像
27
=sort($B$6:C$9,COLUMN((b1))
こんな感じなのかな?
外れかなあ?

引数がどこまで省略できるのかよくわかりませんが
この関数はいいですね。

min

63
{=OFFSET($B$15,-RIGHT(LARGE(99+C$6:C$9-ROW($1:$4)%,ROW(A1))),)}
もう少し短くなるような気もしますが。

新関数想像
27
=sort($B$6:C$9,COLUMN((b1))
こんな感じなのかな?
外れかなあ?

引数がどこまで省略できるのかよくわかりませんが
この関数はいいですね。

y sakuda

わーー、minさんの凄い。下からOffsetなんて考えなかった。行Noをマイナスしちゃうと訳わかんなくなるし・・・って感じでストレートにLargeには行かなかったんですが^^

y sakuda

>こんな感じなのかな?
ちょっと違います。Sortは私もかんがえたけど、↓のような46が限界。で私も関数一覧眺めなおして、からくりが分かった^^
=INDEX(SORT($B$6:C$9,COLUMN(B1),-1),ROW(A1),1)

くまぷー

あ、賑やかになっている。
みなさん、どもです。ぺこり

>=sort($B$6:C$9,COLUMN((b1))

まず、minさんの式ですが、たぶん括弧の組み合わせが合ってないので・・・

=sort($B$6:C$9,COLUMN(b1))

・・・として実験したものが上の方にアップした参考図1です。

あんな感じなのでsakudaさんの仰る通り、上手くいきません。

スピルを体験したことのない方にはメチャクチャ違和感があると思いますが
セルC13に式を入力すると自動的に、いろいろ、C13からD16に表示されます。

くまぷー

27文字は・・・

=SORTBY($B6:$B9,C$6:C$9,-1)

・・・です。

くまぷー

あ、ちなみに下がOffice TanakaのSort関数/SortBy関数の解説です。

http://officetanaka.net/excel/function/function/sort.htm

ちなみに・・・

>まぁ、SORTBY関数にはそれなりに便利な使い方があるかもしれませんけど、今は思いつきません。それどころか「これって、あまり使われねーんじゃね感」が強いです(笑)。ちなみに、私のこのカン、昔からけっこう当たります(爆)。

・・・と仰っていますが、こんな使い方はどうですか?
・・・というのが私の提案です。

・・・と、ここで言っても仕方ありませんが (^^ゞ

y sakuda

Spill非常に厄介なんですよね。
例えば、式部分的に書いて、Spillしちゃう。その後外側にINDEXとかで答えが単一になるように直そうとすると、配列の一部は修正できないって怒られるから、全部消してから入れなおさなきゃならない。
まあ、どうなるか予想できるようになると途中までは{}で入れておくとか対応できますけど^^
Spill不要論者ですw

y sakuda

>SORTBY関数にはそれなりに便利な使い方があるかもしれませんけど
機能としてはいいんだけど、関数としてはいらないですね。話がややこしくなっちゃうw

くまぷー

>Spill非常に厄介なんですよね。

カチンとくる所:式に含まれる配列を表示する場所が無いと式に欠陥が無くてもエラーになる所。

良い点:表示する場所があれば、従来は脳内で処理しなければならなかった配列が可視化される所かな?

くまぷー

この問題をやってみての研究なんですが・・・

>75{=OFFSET($B$5,MATCH(LARGE(C$6:C$9-ROW(1:4)%,ROW(A1)),C$6:C$9-ROW(1:4)%,),)}

>=INDEX($B:$B,RIGHT(SMALL(RANK(C$6:C$9,C$6:C$9)+{6;7;8;9}%,ROW(A1))))

・・・は

=SORTBY($B6:$B9,C$6:C$9,-1)

・・・に比べると複雑すぎ!! もはや出番は無い!!

・・・のだろうかというとそんなことは無い!

なんと、上の2式はPhonetic()をかぶせて・・・

=PHONETIC(OFFSET($B$5,MATCH(LARGE(C$6:C$9-ROW(1:4)%,ROW(A1)),C$6:C$9-ROW(1:4)%,),))

=PHONETIC(INDEX($B:$B,RIGHT(SMALL(RANK(C$6:C$9,C$6:C$9)+{6;7;8;9}%,ROW(A1)))))

・・・とするだけで参考図2のようにできる。

しかし・・・

=SORTBY($B6:$B9,C$6:C$9,-1)

・・・はできない。

それが面白い所。

新関数、従来の関数、いろいろあって面白い。

min

>括弧の組み合わせが合ってないので・・・
あら、本当。
最近目が弱って、、
なんも考えてないことがばれた。


SORTBYの方でしたか。
それも樹にはなっていました。
ん、樹じゃなくて気

それにしても
>Spill非常に厄介なんですよね。
そんな感じですね。

でも、新しい関数もいいところはあるみたい。
必要ない人は使わなければいい、
と開発者が考えて
新製品の付加価値を付けるのに躍起になっているのか?

とりあえず年齢的にも新関数は覚えられそうもないので、
しばらく2007でいきます、、、


Spill議論も役に立ちました。
ありがとうございました。

min

くまぷーさん
わざわざ、画像まで
お手数おかけしました。

min

sakudaさん
rankの方が少し長くなるんですね。

min

niさんと75はやはり一緒でした。

くまぷー

>くまぷーさん
>わざわざ、画像まで
>お手数おかけしました。

いえいえ、どういたしまして。(^^ゞ

コメントの確認

コメントのプレビュー

プレビュー中です。コメントはまだ投稿されていません。

処理中...
コメントを投稿できませんでした。エラー:
コメントを投稿しました。 さらにコメントを投稿する

入力された文字と数字は画像と一致していません。再度入力してください。

最後に、下の画像の中に見える文字と数字を入力してください。これはプログラムを使ってコメントを自動的に投稿するのを防ぐために行われています。

画像を読み取れない場合は 別の画像を表示してください。

処理中...

コメントを投稿

アカウント情報

(名前は必須です。メールアドレスは公開されません。)

2024年8 月

        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

TOP メニュー