에서 매개 변수 inequal 연산자를 전달하는 내가 액세스 호출 "1PreviousEWBS"의 아래에 저장된 조회 한 방법 : 사용자가 데이터를 선택하는 콤보 상자를 사용할 수 있도록 SQL 액세스 VBA
SELECT f.ewbs AS EWBS, SUM(f.[total hours]) AS [Total Hours], SUM(f.[total cost]) AS [Total Cost], T.description AS Activity, T.AWBS AS AWBS
FROM FindHrCostByEWBS AS f, AllProjectsCodes AS T
WHERE (f.project)=Forms!x!cboProjects
And f.[period end date]<Forms!x!cboDate
And f.ewbs=T.oldewbs
GROUP BY f.ewbs,T.description, T.AWBS;
가 Bascially 내가 이것을 썼다.
하지만 지금은 VBA를 통해 매개 변수를 직접 설정할 수 있는지 궁금합니다. 나는이 같은 것을 준비했다. .
Sub TestSeePreviousData
Dim rS As DAO.Recordset
Dim db As DAO.Database
Dim queryDef As DAO.queryDef
Dim ProjectNumber As String
Dim FiscalDate As Date
FiscalDate = #4/25/2014#
Set db = CurrentDb
Set queryDef = db.QueryDefs("1PreviousEWBS")
'Parameter 0 is to input the Project number
queryDef.Parameters(0) = "173221"
'Parameter 1 is to give the fiscal period end date
queryDef.Parameters(1) = "'" & FiscalDate & "
Set rS = queryDef.OpenRecordset
Do While Not rS.EOF
'The lines for 1PreviousEWBS
Debug.Print rS.Fields("EWBS") & vbTab & rS.Fields("AWBS") & vbTab & rS.Fields("Total Hours") & vbTab & rS.Fields("Total Cost")
rS.MoveNext
Loop
End Sub
내 문제는 내가, 즉
F [기간 종료일] < [입력 날짜] 초기 "보다"상태를 재현하고자하며,이 :
된 QueryDef. 매개 변수 (1) < " '"& FiscalDate & "'"
이 작동하지 않습니다, 그것은 "속성의 잘못된 사용"
의 오류 메시지를 반환내 질문에, 어떻게 내가 VBA에 SQL에 대한 매개 변수를 설정할 때 불평등 조건을 보여줄 수 있습니까?
안녕하세요 @ user3618839 문제는 "DIM FiscalDate as Date"로 내려갈 것입니다. 나는 # 4/25/2014 #로 설정하고 나중에 '# 4/25/2014 #'로 설정하면 변환 문제가 있다고 생각합니다. – Eddy
귀하의 요점은, 내가 무엇을 이해하지 않는 경우, 쿼리 def 이미 매개 변수 요구 사항에 하드 코드 된 있습니다. 즉. f. [기간 종료일]
Eddy
안녕하세요. 솔직히 말해서 첫 번째 의견을 이해하지 못합니다. FiscalDate의 날짜 지정이나 # 4/25/2014 #의 설정에 문제가없는 것 같습니다. 의심 스럽다면, 그 후에 모든 것을 주석 처리하고 실행하십시오. 나는 그것이 깨지지 않을 것이라고 확신한다. 두 번째 질문에 – VBlades