많은 사용자가 Microsoft Query를 사용하여 Excel 2003에서 ODBC 쿼리를 작성하여 회사 데이터에 액세스합니다. 더 복잡한 것들을 위해 종종 나를 관련 시키게됩니다.Excel 2003/MS 쿼리에서 SQL Server 2000 인라인 테이블 반환 함수 호출
특정 데이터를 추출하는 가장 논리적 인 방법은 인라인 테이블 반환 함수를 사용하여 매개 변수화 된보기의 기능을 구현하는 것입니다. 쿼리 분석기에서 호출 할 때 잘 작동 :
SELECT * FROM fn_AverageRecovery('2009-07','2009-10')
Sequence Process Centre Process Centres_Description Input Qty Output Qty Recovery
----------- -------------------------------------------------- -------------------------------------------------- ----------------------------------------------------- ----------------------------------------------------- -----------------------------------------------------
10 GM Green Mill 12345.678 11223.344 11
11 LYR Log Yard Report 98765.432 55443.322 99
20 MB MultiBand Resaw 5555.666 5555.444 50
그러나 MS 쿼리에서 동일한 SELECT 절은 오류가 발생 입력 :. 테이블 'fn_AverageRecovery를 ('2009-07 ''추가 할 수 없습니다를
뿐만 아니라 그,하지만 내가 정말로하고 싶은 것은 마침표 매개 변수를 스프레드 시트에서 가져온 것입니다. 그러나 물음표로 리터럴을 대체하면 MS Query가 두려운 오류를줍니다. 매개 변수는 그래픽으로 표시 할 수없는 쿼리에는 사용할 수 없습니다 .
이제는 과거의 상황을 회피하기 위해 오히려 다음, 엑셀 내에서 결과 집합에서 셀을 클릭하면, 몇 가지 간단한 SQL 문을 입력 VBA로 전환하고 직접 실행 창에서 수동으로 CommandText 속성을 설정하는 우아한 방법 : VBA에서
ActiveCell.QueryTable.CommandText="select * from fn_AverageRecovery(?,?)"
불만.
[Microsoft] [ODBC SQL Server 드라이버] 잘못된 매개 변수 번호
[마이크로 소프트] [ODBC SQL 서버 : 나는 Excel로 다시 전환하고 새로 고침 데이터 셀을 마우스 오른쪽 버튼으로 클릭하고 선택할 때 나는 두 가지 오류를 얻을 수 드라이버] 잘못된 설명자 인덱스
나는 이것을 가로 질러 왔을 때마다 한 시간 정도 노력해서 일을하려고했지만 항상 다른 방법으로 해결해야했습니다. 나는 누군가가 이것을 정복했는지 알고 싶다.
감사
웨인 아이보리
Wayne, 저는 2009 년 출간 된 소식을 알고 있지만 어쨌든 물어보고 싶었습니다. MS Query에서 테이블 값 함수를 사용할 수 있었습니까? 함수에 실제로 입력 매개 변수가 필요하지 않더라도 "매개 변수가 함수에 제공되지 않았습니다."라는 오류가 발생합니다. –