-PR-
解決
済み

Access2000での順位表示について

  • 困ってます
  • 質問No.21189
  • 閲覧数43
  • ありがとう数1
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 42% (18/42)

以前も同様な質問をして回答いただいておりますが、応用が利かず、助けていただきたい次第です。200mメドレーにおける自己の記録の順位検索。自分のIDと検索対象性別(男 OR 女 OR 男女とも)を入力して検索、何人中何番かの値を得たい。
質問:コマンドボタンに下記のような記述をしたいが、どうすれば良いか?

クエリ”200m記録”:ある実施者の記録より高い記録を抽出したもの
クエリ”200m総合記録”:男女全ての実施者の記録
性別選択 :フォーム上のオプショングループ

IF “実施者ID=” &ME![実施者ID] である実施者の性別が、-1(男)
であり、検索対象が、0(女)である場合、Then
![200m順位] = DCount("実施者ID", "200m記録") + 1 & "/" &
DCount("実施者ID","200総合記録", 性別選択 = 0)+1
IF “実施者ID=” &ME![実施者ID] である実施者の性別が、 0(女)
であり、検索対象が、-1(男)である場合、Then
![200m順位] = DCount("実施者ID", "200m記録") + 1 & "/" &
DCount("実施者ID", "200m総合記録", 性別選択 = -1)+1
IF “実施者ID=” &ME![実施者ID] である実施者の性別が、-1(男)
であり、検索対象が、-1(男)である場合、Then
![200m順位] = DCount("実施者ID", "200m記録") + 1 & "/" &
DCount("実施者ID", "200m総合記録", 性別選択 = -1) 
IF “実施者ID=” &ME![実施者ID] である実施者の性別が、 0(女)
であり、検索対象が、0(女)である場合、Then
![200m順位] = DCount("実施者ID", "200m記録") + 1 & "/" &
DCount("実施者ID", "実施者総数", 性別選択= 0) 
Else
![200m順位] = DCount("実施者ID", "200m記録") + 1 & "/" &
DCount("実施者ID", "200m総合記録")
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル13

ベストアンサー率 46% (643/1383)

お書きになった内容をVBAで書きますと、大体こんな感じになるかと思います。
尚、今回は動作検証をしていません。
もし何か問題がありましたら、補足をお願いします。

Private Sub コマンド1_Click()
'以下の[変数]を使うことを宣言する
  Dim 実施者性別 As Long '実施者の性別,長整数型
  
'実施者の性別を取得して、実施者性別(変数)に代入する
 '([実施者]テーブルに[性別]フィールドがあるとする)
  実施者性別 = DLookup("性別", "実施者", "[実施者ID] = " & Me![実施者ID])

'実施者の性別及び、性別選択の内容によって、表示する内容を変える
  If 実施者性別 = -1 And Me.性別選択 = 0 Then
    Me.[200m順位] = DCount("実施者ID", "200m記録") + 1 & "/" & DCount("実施者ID", "200総合記録", 性別選択 = 0) + 1
  ElseIf 実施者性別 = 0 And Me.性別選択 = 1 Then
    Me.[200m順位] = DCount("実施者ID", "200m記録") + 1 & "/" & DCount("実施者ID", "200m総合記録", 性別選択 = -1) + 1
  ElseIf 実施者性別 = -1 And Me.性別選択 = -1 Then
    Me.[200m順位] = DCount("実施者ID", "200m記録") + 1 & "/" & DCount("実施者ID", "200m総合記録", 性別選択 = -1)
  ElseIf 実施者性別 = 0 And Me.性別選択 = 0 Then
    Me.[200m順位] = DCount("実施者ID", "200m記録") + 1 & "/" & DCount("実施者ID", "実施者総数", 性別選択 = 0)
  Else
    Me.[200m順位] = DCount("実施者ID", "200m記録") + 1 & "/" & DCount("実施者ID", "200m総合記録")
  End If
End Sub
お礼コメント
Cloes

お礼率 42% (18/42)

ありがとうございました。
また、よろしくお願いします。
どうぞ、良いお年を!
投稿日時 - 2000-12-24 20:46:15
-PR-
-PR-
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ