過去の桐井戸端BBS (桐ver.9)
18153 文字列項目しかない表で一番件数の多いグループの件数を集計したい うにん 2002/12/03-13:02
行集計で、#件数など結果が数値になる計算式を文字列項目においても特に問題なく実行できます。
ところが、その結果は文字列に変換されているので項目集計しても無意味な結果になってしまいます。
(文字数の集計になる)

やりたいことは、「一番件数の多いグループの件数を調べる」なんですが、表に文字列項目しかない場合、
どうするのが簡単でしょうか?
一括処理でループするしかないかな?書出しするとファイルができるのがいまいちだし。

18154 Re:文字列項目しかない表での集計 Ogo 2002/12/03-13:35
記事番号18153へのコメント

>やりたいことは、「一番件数の多いグループの件数を調べる」なんですが、表に文
>字列項目しかない場合、どうするのが簡単でしょうか?

ダミーの(何も計算式やデータが入っていない)数値型の項目を予め用意しておいて、
行集計を取る時に、当該項目で #件数 を定義するのではなく、
上記の数値型ダミー項目で #件数([本当に集計したい項目]) と定義してやるのが一番楽ですが、
該当する表の定義は変更できないのですか?

18156 Re:文字列項目しかない表での集計 Ogo 2002/12/03-15:51
記事番号18154へのコメント

>やりたいことは、「一番件数の多いグループの件数を調べる」なんですが、表に文
>字列項目しかない場合、どうするのが簡単でしょうか?

「一番件数の多いグループの件数を調べる」で、
具体的に件数がどれほどかによるのですが(桐の仕様制限故に...)、

行集計の定義時に、グループ項目の集計内容を

 #複写("★",#件数([]))

とすれば、「1件が★1つ」という絵グラフにできますよね。
この集計後の項目で整列(昇順/降順)をかければ、
グループの値を取り出すこともできるし、
変数にその #文字数([]) を代入すれば件数も取り出せますよね。


18157 Re:文字列項目しかない表での集計 Ogo 2002/12/03-15:59
記事番号18156へのコメント

>「一番件数の多いグループの件数を調べる」
>で、具体的に件数がどれほどかによるのです
>が(桐の仕様制限故に...)、
>
>行集計の定義時に、グループ項目の集計内容を
>
> #複写("★",#件数([]))
>
>とすれば、「1件が★1つ」という絵グラフに
>できますよね。

#複写("●",#INT(#件数([])/1000))+#複写("○",#MOD(#件数([]),1000))
 +#複写("★",#MOD(#件数([]),100))+#複写("☆",#MOD(#件数([]),10))

とかすれば何桁でもいいとも言える。 (笑)


18158 Re:文字列項目しかない表での集計 うにん 2002/12/03-16:10
記事番号18156へのコメント
Ogoさんありがとうございます

>「一番件数の多いグループの件数を調べる」
>で、具体的に件数がどれほどかによるのです
>が(桐の仕様制限故に...)、
>
>行集計の定義時に、グループ項目の集計内容を
>
> #複写("★",#件数([]))
>
>とすれば、「1件が★1つ」という絵グラフに
>できますよね。

これいい!

このあとは、その項目で項目集計で一発です。

3000件位までなら安全でしょう。

18160 Re:文字列項目しかない表での集計 うにん 2002/12/03-16:32
記事番号18157へのコメント
>#複写("●",#INT(#件数([])/1000))+#複写("○",#MOD(#件数([]),1000))
> +#複写("★",#MOD(#件数([]),100))+#複写("☆",#MOD(#件数([]),10))
>
>とかすれば何桁でもいいとも言える。 (笑)

ローマ数字ですねえ。某OpenOfficeにはROMAN(2002)とやるとMMIIになる関数があったりします。
3999までしか対応してないところが桐の制限と似てる(^^;
今回の目的には適しませんが。

戻る