[Access]查询出行最小值的同时,把最小值对应的字段名也取出来?

一、学友问题描述:
Access查询能否实现查出行最小值的同时,将供应商名称也取出来?取值我可以查询出来,我想把最小值对应的字段名也取出来能否实现?如下图:

希望得到的效果:

二、解决方法:

用循环代码即可实现,示例代码如下:

Private Sub Cmd_Result_Click()
Dim rst As Object
Dim strSQL As String
Dim m_maxValue As Currency
Dim strField As String
Set rst = CreateObject("adodb.recordset")
strSQL = "select * from 原表"
rst.Open strSQL, CurrentProject.Connection, 1, 3
Do While Not rst.EOF
m_maxValue = 0
strField = ""
If Nz(rst!供应商A, 0) < Nz(rst!供应商B, 0) Then
m_maxValue = rst!供应商A
strField = "供应商A"
Else
m_maxValue = rst!供应商B
strField = "供应商B"
End If
If m_maxValue < Nz(rst!供应商C, 0) Then
m_maxValue = m_maxValue
Else
m_maxValue = rst!供应商C
strField = "供应商C"
End If
If m_maxValue < Nz(rst!供应商D, 0) Then
m_maxValue = m_maxValue
Else
m_maxValue = rst!供应商D
strField = "供应商D"
End If
If m_maxValue < Nz(rst!供应商E, 0) Then
m_maxValue = m_maxValue
Else
m_maxValue = rst!供应商E
strField = "供应商E"
End If
rst!最小值 = m_maxValue
rst!供应商名称 = strField
rst.Update
rst.MoveNext
Loop
rst.Close
Set rst = Nothing
MsgBox "处理完成,请点击确定按钮打开看结果!", vbInformation, "提示:"
DoCmd.OpenTable "原表"
DoCmd.MoveSize 7000, 2150, 9500, 6500
End Sub

举报
评论 0