初めて書き込みします。どうぞお手柔らかにお願いします。
ACCESS97で、成績表を作成しています。
(ボーリング大会の順意表なのですが)
総合順位、性別順位、チーム対抗など各種順位をつけなければならず、
これは、ACCESSを使用したほうがいいなと思い作成しているのですが、
クエリーかフォーム上で上位から順位をつけて表示させたいと思い
いろいろ探してみましたが、よくわかりません。
表を作成して、自動的にHTMLにして、ホームページ上で閲覧できる
ようにしたいので、1フィールドとして自動的に順位がつく方法を
教えてください。宜しくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

レポートなら可能


フィールドのコントロールソースに「=1」と指定する。
フィールドの集計実行を「グループ全体」か「全体」にする。

注意:Access2000での説明

クエリーで並び替えとグループ化をすれば各々簡単に順位表は作れます。
並び替えは得点順
グループ化は例えば性別なら性別と名前、得点でグループ化
チーム別ならチーム名でグループ化し、得点の合計をとれば問題ないでしょう。

但し、同点の場合正しい順位の表示は難しいかと思います。(VBAを使えば可能だか)
    • good
    • 0
この回答へのお礼

ありがとうございました。
解決しました。同点の場合は、生年月日の若い順(お年寄り)の方が
上位になるように生年月日も登録しているので、大丈夫だと思います。
グループ化を使うなんて思ってもみませんでした。ひとつ賢くなりました。
また、わからないことがあったら教えてください。

お礼日時:2002/01/18 02:30

参考にしてください。



テーブル名記録:名前(テキスト)、得点(数値)、チーム(数値)性別(yes/no)
テーブル名チーム:チーム(数値)、名前(テキスト)
テーブル名性別:性別(yes/no)、性(テキスト)

クエリー名総合:フィールド:名前、得点(降順)、名前、性
クエリー名男:名前、得点(降順)、名前(チーム)、性(性別)、性別(<0)
クエリー名女:名前、得点(降順)、名前(チーム)、性(性別)、性別(=0)

HTML表示は一度エクセルに変換しないと無理かと思います。
チーム平均はクエリーでのやり方がわかりません。
レポート画面では関数表示でできます。

この回答への補足

すみません。質問の仕方がわるかったようです。
参考の内容はわかります。が、得点順に並べるのに加えて、
1(位)2(位)・・・・といった順位のフィールドを加えたいのです。
テーブルの左下に表示されるレコード位置がフィールドとして表示できる
とか、関数とか何かいい方法はないものなのでしょうか?

ちなみに、HTMLはマクロでクエリーの結果を出力することができます。

補足日時:2002/01/14 23:52
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す

このQ&Aと関連する良く見られている質問

QAccess2000のクエリでクラスごとの順位表を作りたい

成績表テーブルがあります。

フィールドは 学年、組、点数 です。

ここで 組(先に学年で抽出後)ごとに順位を出したいと思います。

単に順位を出すだけなら次の形ででそうなのですが、組ごとにする
場合はどうすればよろしいでしょうか?

順位:Dcount("[点数]","[成績表]","[点数]<" & [点数])+1

Aベストアンサー

追加です。
ひとつのフィールドに出したい時は
順位:DCount("[点数]","[成績表]","[点数]<" & [点数] & "and [組]='" & [組] & "'")+1

これだと点数が低い順になりますがいいんでしょうか?高い順にする場合は "[点数]>" とします

Qaccessで順位の合計の順位の求め方

[T_成績]というテーブルの中に
   フィールド名:[出席番号]
   フィールド名:[得点]
というフィールドがあるとします。
まず、新規にクエリーを作ります。これはただの選択クエリーで、[T_成績]テーブルを1個だけ追加します。
クエリーグリッドのフィールド欄に[出席番号]と[得点]を追加します。
最後のフィールドに順位を求める式を入力します。式は以下の通りです。
  順位: (select count(*) from T_成績 as T_成績_1 where T_成績_1!得点>T_成績!得点)+1
こうすれば順位が求められるのですが例えば国語と数学と英語の順位の合計の低い順に順番を求めたいのですが(単純に合計の順位ならでるのですが)、順位の合計の順位というものがうまくいきません。本当に困っていますまる3日いろいろ試したのですがうまくいきません。今日も徹夜でした、よろしくお願いします。

Aベストアンサー

>循環参照が発生していますというメッセージが出てしまうんです。

ということは、作業用のテーブルを作ったほうがいいかも。
#2で作成したクエリーを、テーブル作成クエリーにして作業用テーブルを作成して、それに対して新たに選択クエリーを作成してみてください。

QAccess97の更新クエリーのformat$関数をAccess2000タイプに直したいのですが

Access97の更新クエリーのformat$関数で
format$([印刷]![区分],"@@")
上記の構文で数値を二桁の文字に直している更新しているのですが
Access2000では関数を認識してくれません、
format関数でも同じでした

Access2000で同じ事が出来る方法を教えてください

Aベストアンサー

Access2000だと

Visual Basic For Application
Microsoft Access 9.0 Object Library
Microsoft DAO 3.6 Object Library

になっているかと思います。

Access97は
Microsoft Access 8.0 Object Library
Microsoft DAO 2.5/3.5 Compatibility Library

Microsoft DAO 3.51 Object Library
だと思います。

環境によって変わってくる部分もあるかと思いますが、
この辺を直しておけばよかったと思います。

QACCESS2000、テーブル作成追加クエリー

SQL文を見ていると、
SELECT ・・・・・・・・INTO SURVEY IN 'DEPOSIT.mdb'
となりますよね。で、このIN以下は、ACCESSのツール→オプション→全般で指定した「規定のデータベースフォルダー」にあるものになりますよね。
これを、たとえばネットワーク上の他のコンピューターのフォルダーに保存させることは出来ますか? 「規定のデータベースフォルダー」をネットワーク上にする方法よりも出来ればSQL上で書いてしまいたいのですが。

Aベストアンサー

はじめまして
>SELECT ・・・・・・・・INTO SURVEY IN 'DEPOSIT.mdb'

SELECT ・・・・・・・・INTO IN '\\コンピュータ名\共有フォルダ名\DEPOSIT.mdb'
でできませんか?
Access2000では使ったことがないのでわかりませんが
Access97の時はたしかできました。

Q【Access抽出方法】 表A-表B=表C は?

Accessを使って2つの表からデータを抽出する方法を
教えてください。

やりたいことは引き算です。
 表A - 表B = 表C

表Aには全取引会社がリストとして入っています。
表Bには得意先の会社だけが入っています。
表Aの中に入っている会社から表Bの得意先以外の
会社だけを表Cとして出したいのですが、
どうするのでしょうか?

実は今、これを手作業で1つ1つ検索削除をやってます。
どなたかお助けください!

Aベストアンサー

テーブルが取引先と得意先
キーが会社CDとすると

SELECT 取引先.*
FROM 取引先 LEFT JOIN 得意先 ON 取引先.CD = 得意先.CD
WHERE (得意先.CD) Is Null;

取引先全レコードと得意先レコードをキーで結びつけて
そのうち得意先レコードがない(null)のレコードを選択する。


このカテゴリの人気Q&Aランキング

おすすめ情報