저는 Access 2007을 사용하고 VBA에서 매크로를 작성하고 있습니다. "분석"서브 루틴은 레코드 세트 rev_rec에 전달됩니다. 이 레코드 세트에는 두 개의 필드 "PeriodNo"(Integer)와 "Revenue"(double)이 있습니다. Minrev는 "Revenue"필드의 최소값을 저장해야하는 변수입니다. 내가 사용하고있는 코드는 다음과 같습니다.루프를 사용하지 않고 레코드 집합 필드에서 최소값 가져 오기
Public Sub Analyze(rev_rec As DAO.Recordset)
Dim Minrev As Double
rev_rec.MoveFirst
Minrev = rev_rec("Revenue")
While Not rev_rec.EOF
If rev_rec("Revenue") < Minrev Then
Minrev = rev_rec("Revenue")
End If
rev_rec.MoveNext
Wend
rev_rec.MoveFirst
.
.
.
End Sub
레코드 세트를 사용하여 DMin()을 사용해 보았지만이를 수행 할 방법을 찾을 수 없습니다. 어떤 종류의 루프도 사용하지 않고이 작업을 수행 할 수있는 방법이 있습니까?
최선의 방법은 원하는 기간 동안 최소 하나의 레코드 만 검색하는 SQL 문을 사용하여 새 레코드 집합을 작성하는 것입니다. 또 다른 옵션은 오름차순 열의 오더 기준에서이 특정 레코드 집합을 열 수 있다는 것입니다. 이렇게하면 가장 작은 값이 첫 번째 레코드에 있음을 알 수 있습니다. – HK1
@ HK1 나는 무엇이 잘못되었는지 대답으로 보지 않는다. – Fionnuala