2010-08-05 2 views
0

변경된 Excel 매크로에서 실행되는 쿼리가 있는데 매크로에서 코드를 변경하는 방법을 알 수 없습니다. 원래 쿼리는 다음과 같습니다Excel에서 MSQuery 쿼리가 변경되었습니다.

ActiveSheet.QueryTables.Add (연결 = 배열 ​​(배열 (_ "ODBC; DSN = MS 액세스 데이터베이스; DBQ ="& strpath & "; DriverId = 25; FIL = MS 액세스 ;가 MaxBufferSize = 2,048]의 PageTimeout "_ )를 배열 ("= 5; ")), 목적지 = 범위 ("A1 ")) = .CommandText 어레이 (_ "8MR Final있는 .plan, 8MR Final .Area, 8MR Final를 선택 .Track, 8MR Final. 1 MR Report .SEGMENT, 8MR Final. Seg Begin, 8MR Final. Seg End, 8MR Final. Track Category, 8MR Final .Component,.ID, 8MR Final. Defect Desc, 8MR Final. 미디어, 8MR Final. Def Begin Sta, 8MR Final. Def End Sta, 8MR Final. 레일, 8MR Final. 표준, 8MR Final. Work Action, 8MR Final .Quanti "_ , _ "ty, 8MR Final .UM, 8MR Final. Unit Cost, 8MR Final. Ext Cost, 8MR Final. "& Chr (13) &" "& Chr (10) &"FROM " & strpath & ". 8MR Final8MR Final "_ )

새로운 쿼리가 그것을하고 매개 변수에 조인 그것이 내가 매크로를 실행하도록 변경하려면 어떻게 매크로에서 실행할 수 있습니다 액세스로부터 새로운 쿼리는 다음과 같습니다.?.

SELECT [1 MR Report] .Plan AS PlanDesc, [1 MR Report]. 영역, [1 MR Report] .Track, [1 MR Report]. 세그먼트, [1 MR Report]. [Seg Begin], [1 MR Report ], [MR Report], [MR Report], [MR Report], [7Meas] .ID, [MR Report]. [Defect Desc], [7Meas] .Meas, 1 MR Report]. [Def Begin Sta], [1 MR Report]. [Def End Sta], [1 MR Report] .Rail, [1 MR Report]. 표준, [1 MR Report], [ [1 MR Report] .Quantity, [1 MR Report] .UM, [1 MR Report]. [Unit Cost], [1 MR Report]. [Ext Cost], [7Meas]. 설명 FROM [1 MR Report] FROM JOIN 7Meas ON ([1 MR Report] .Segment = [7Meas] .Segment) AND ([1RM Report] .Defect = [7Meas] .Defect) AND ([1RM Report].[1 MR 리포트] .Plan, [1 MR 리포트] .Area, [1 MR Report] .Track, [1 MR Report] .Segment, [1 MR Report]. [Seg Begin], [1 MR Report]. 구성 요소, [7Meas] .ID, [MR Report]. [Defect Desc ], [1 MR Report]. [Def Begin Sta], [1 MR Report]. [작업 실행];

스프레드 시트에서 매개 변수를 가져와 전역 변수에 배치하는 방법을 알아 냈지만 쿼리를 변환하는 데 문제가 있습니다. 가능한 경우 같은 방법으로 실행해야합니다. 도움과 제안에 미리 감사드립니다.

로라

답변

0

조각으로 작업하십시오.

SELECT 절과 FROM 절에서 하나의 필드로 시작하십시오. 당신이 그 일을 할 수 있는지보십시오. 그렇지 않은 경우 FROM 절의 조인을 줄이고 각 조인을 개별적으로 추가 할 때까지 조인을 줄입니다.

그런 다음 모든 필드가있을 때까지 각 필드를 다시 추가 한 다음 WHERE 절에 조건을 추가하고 마지막으로 ORDER BY 절을 그대로 둡니다.

또한 읽기 쉽도록 FROM 절의 테이블 별칭을 고려하십시오.

관련 문제