- 締切済み
ACCESSのレポートにて分数表示する方法
おせわになっております。助けてください。 ACCESS2007を使用しています。レポートを作成しています。 内容は、雑誌の掲載内容を月次で集計しているレポートで、 掲載ページ数を分数で表わしているのですが、 分数で表示されたものを合計することはできました。 (Evalなどをつかい、=Sum(Eval([Space]))なんて具合に) しかし、合計が小数表示になってしまいます。Example:1.15など。 この表示を、1 1/2にしたいのですが、どのようにしたらよろしいでしょうか?
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- piroin654
- ベストアンサー率75% (692/917)
>Text Box に「1/2」など分数を入力させて、=Sum(Eval([Space])) >Spaceというフィールドの合計をEval関数を使って出しています。 という事のようなので、テキストボックスに 分数を分子と分母に分けて連続入力し、 その都度三つのテキストボックスに たとえば、1 2/3 ならば1、2、3を それぞれに表示するというように します。そのような形でいいでしょうか。
- piroin654
- ベストアンサー率75% (692/917)
どうも。実は関数は既に出来上がって いまして、 たとえば、フィールドを sp分子、sp分母としてそれぞれを 数値型でテーブルに新設します。 これに分数で表記している数値を 分子と分母にわけて記録していきます。 それと主キーが必要です。 こういうことができますか。 ということをお聞きしようと思って お返事を待っていたのですが、分子と 分母を別フィールドに書かなければ ならず、面倒くさいのでどうなのかな と思った次第です。これをされるなら 関数は使えます。もちろん希望の 商、分子、分母に分離して数値を とりだします。 あと、もう一点。一回の計算で 分数の分母部分をすべて掛け合わせた 数値はどのくらいの大きさになりますか。 また、一つの分数の分子、分母は だいたいどんな数値になっていますか。 たとえば、分母が517とか1999だと いくつかの分数を足すと分母が大きな 数値になり関数の正確な計算範囲を 越えてしまします。通分ができない 分数になるとこういう心配があるから です。 このあたりはどうですか。
- piroin654
- ベストアンサー率75% (692/917)
遅くなり、申し訳ありません。 Spaceの計算は具体的には、テーブルに ある数値ですか。たとえば 1/6 1/5 11/231 のような分数が記録してあり、それを =Sum(Eval([Space]))でフォームの フィールドに表示しているという ことでしょか。 仮定としてそういうことであれば、 一つの案としてテーブルに分数として 記録している数値を分子と分母に 分けてテーブルに格納すれば出来る と思います。たとえば、フィールドを sp分子、sp分母としてそれぞれを 数値型でテーブルに新設します。 これに分数で表記している数値を 分子と分母にわけて記録していきます。 それと主キーが必要です。 こういうことができますか。できる ならばコードを出せると思います が、少し待ってください。
- piroin654
- ベストアンサー率75% (692/917)
レポートそのもののページ数の表示方法は ウィザードを使うと =[Page] & "/" & [Pages] & " ページ" という形で表示されます。また以下に http://support.microsoft.com/default.aspx?scid=kb;ja;407754&Product=accJPN ありますが、分数を表示する機能は Accessにはありません。テキストボックス 使って表示するようになりますが。 >掲載ページ数を分数で表わしているのですが とありますが、これはどの部分にどのように 表示されているのですか。また、 >分数で表示されたものを合計することはできました。 どのような計算をされたのですか。
補足
回答ありがとうございます。 Text Box に「1/2」など分数を入力させて、=Sum(Eval([Space])) Spaceというフィールドの合計をEval関数を使って出しています。 これは、ちゃんと結果が出るのですが、結果は少数なのです。 1.5 と表示されるのを、1 1/2 と表示させたいのです。 助けてください。
お礼
お礼が遅くなりました。数値と分子分母ということは、結果を3つのフィールドを もたせるということですよね?結果は小数点で表示されているので、 どうしたらいいのでしょうか? やはり難しいでしょうか。