2017-12-08 5 views
0

액세스 VBA에서 이름보다 쿼리 다른 전화하는 방법 :나는 그것을 다음과 같이 이름으로 쿼리를 호출 할 수 있습니다 알고

DoCmd.OpenQuery "yourQueryName", acViewNormal, acEdit 

또는

CurrentDb.OpenRecordset("yourQueryName") 

그러나 그들을 호출 할 수 있습니다 Excel에서 스프레드 시트와 같은 숫자가 있습니까? 같은 뭔가 :

CurrentDb.OpenRecordset Queries(1) 

또는 가능한 다른 방법?
참고 : 내 쿼리가 일본어로되어 있기 때문에 VBA에서 열심히 읽지 않으려 고합니다.

답변

1

확실히 QueryDefs 컬렉션을 사용하여 쿼리를 실행할 수 있습니다. 그러나 위치를 기준으로 참조하는 것은 위험한 일입니다. 위치가 변경 될 수 있고 잘못된 쿼리를 열 수 있기 때문입니다.

는 액세스도 QueryDefs 컬렉션에 사용할 수 일시적/내부 쿼리를 만드는 CurrentDb.QueryDefs(1).OpenRecordset

주를 사용할 수 있습니다, 이렇게하려면. 그들의 이름은 ~으로 시작하며 대용량 데이터베이스에는 종종 많은 수가 있습니다.

는 * 난 당신이`QueryDefs` * 수집을 의미 생각

+1

(내 일반 개발 데이터베이스에 첫 번째 실제 쿼리는 현재 QueryDefs(20)입니다). ;) – wazz

+0

@wazz ofc, 철자가 올바르게 맨 위로 –