Page 167 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼最大値の求め方 goo 03/1/21(火) 10:40 ┗Re:最大値の求め方 イケガミ 03/1/21(火) 13:32 ┗Re:最大値の求め方 goo 03/1/22(水) 12:34 ─────────────────────────────────────── ■題名 : 最大値の求め方 ■名前 : goo ■日付 : 03/1/21(火) 10:40 -------------------------------------------------------------------------
こんにちわ、よろしくお願いします。 testというテーブルがあったとします。 名前、国語得点、英語得点、数学得点、最高得点フィールドで構成されていて、 名前、国語得点、英語得点、数学得点にデータが入っています。 国語得点、英語得点、数学得点のなかから最高得点を最高得点フィールドに出力する ということをaccessでできるのでしょうか? |
>国語得点、英語得点、数学得点のなかから最高得点を最高得点フィールドに出力する 比較対象の項目(フィールド)が3つ程度ならIIF 関数を使ってもできると 思いますが、VBA質問箱ですので自作関数を使う方法を... 【コード例】 ----------------------------------------------------------------- Function GetMax(ParamArray varData() As Variant) As Variant Dim lngArray As Long Dim lngIdx As Long Dim lngMax As Long lngArray = UBound(varData) If lngArray = -1 Then lngMax = "" Else lngMax = varData(0) End If For lngIdx = 0 To lngArray If lngMax < varData(lngIdx) Then lngMax = varData(lngIdx) End If Next GetMax = lngMax End Function ----------------------------------------------------------------- 【クエリでの使用例】 SELECT TableName.国語, TableName.英語, TableName.数学, GetMax([国語],[数学],[英語]) AS 最大値 FROM TableName; でできると思います。 お試しください。 |
イケガミ さん、ありがとうございます。 配列を使うわけですね。早速試してみます。 |