access :pfb(评分表)
得分 跑步 肺活量 坐位前屈
10 3′54″ 73 14
9 3′58″ 70 13
8.5 4′02″ 67 12
8 4′06″ 64 11
7.5 4′10″ 61 10
7 4′15″ 58 9
6.5 4′20″ 55 8
6 4′25″ 52 7
5.5 4′30″ 49 6
5 4′35″ 46 5
4.5 4′40″ 43 4
4 4′45″ 40 3
3.5 4′50″ 37 2
3 4′55″ 34 1
2.5 5′00″ 31 0
2 5′05″ 28 -1
1.5 5′15″ 25 -2
1 5′25″ 22 -3
.5 5′35″ 19 -4
0 5′36″ 18 -5在一窗体在:datagrid考号 姓名 考试项目 成绩 得分
1 A 坐位前屈 13
1 A 肺活量 42
点按钮:计算
从评分表中找出对应成绩的得分,放到datagrid中的得分
考号 姓名 考试项目 成绩 得分
1 A 坐位前屈 13 9
1 A 肺活量 42 4
得分 跑步 肺活量 坐位前屈
10 3′54″ 73 14
9 3′58″ 70 13
8.5 4′02″ 67 12
8 4′06″ 64 11
7.5 4′10″ 61 10
7 4′15″ 58 9
6.5 4′20″ 55 8
6 4′25″ 52 7
5.5 4′30″ 49 6
5 4′35″ 46 5
4.5 4′40″ 43 4
4 4′45″ 40 3
3.5 4′50″ 37 2
3 4′55″ 34 1
2.5 5′00″ 31 0
2 5′05″ 28 -1
1.5 5′15″ 25 -2
1 5′25″ 22 -3
.5 5′35″ 19 -4
0 5′36″ 18 -5在一窗体在:datagrid考号 姓名 考试项目 成绩 得分
1 A 坐位前屈 13
1 A 肺活量 42
点按钮:计算
从评分表中找出对应成绩的得分,放到datagrid中的得分
考号 姓名 考试项目 成绩 得分
1 A 坐位前屈 13 9
1 A 肺活量 42 4
得分 = (SELECT MAX(得分)
WHERE 跑步<=[测试纪录].成绩)
WHERE 考试项目='跑步'UPDATE [测试纪录] SET
得分 = (SELECT MAX(得分)
WHERE 坐位前屈<=[测试纪录].成绩)
WHERE 考试项目='坐位前屈'UPDATE [测试纪录] SET
得分 = (SELECT MAX(得分)
WHERE 肺活量<=[测试纪录].成绩)
WHERE 考试项目='肺活量'
FROM pfb
不好意思,开始没看明白datagrid没用过。用spread示意 With oSpr
For I = 1 To .MaxRows
.Row = I
.Col = 3
strField = Trim(.Text)
.Col = 4
strData = Trim(.Text)
strSQL = ""
strSQL = strSQL & " SELECT 得分 " & vbNewLine
strSQL = strSQL & " FROM FTP " & vbNewLine
strSQL = strSQL & " WHERE " & strField & " <= '" & strData & "' " & vbNewLine resQ.Open strSQL, P_Connect
If resQ.RecordCount > 0 Then
.Col = 5
.Text = Trim(resQ.Fields("得分") & "")
End If
resQ.Close
Next I
End With
得分 = (SELECT MAX(得分)
WHERE 跑步<=[测试纪录].成绩)
WHERE 考试项目='跑步'出现:操作必须使用一个可更新的查证可能是因为access update 不支持子查询,么还是其他原因啊!!
得分 = (SELECT MAX(得分)
from pfb
WHERE 跑步 <=[测试纪录].成绩)
WHERE 考试项目='跑步'
WHERE 考试项目='坐位前屈';
FROM 测试记录 AS a
WHERE 考试项目='跑步';
FROM 测试记录 AS a
WHERE 考试项目='跑步';