2017-04-13 13 views
1

여기에 내가 무엇을 가지고 있고 필요한지 간단하게 설명하고 나중에 할 수있는 한이 포스트를 편집하고 재현 가능한 예제를 추가 할 것입니다.전력 쿼리 + VBA/매크로 대 VBA/매크로 전용

내 프로젝트 : Oracle 데이터베이스의 데이터를 Excel의 한 워크 시트로 쿼리 한 다음 LOOKUP 절차를 사용하여 두 번째 워크 시트의 편집 가능한 테이블에 데이터를 복사합니다. 두 번째 워크 시트는 필터링을위한 테이블 형식이어야하며 날짜 범위별로 데이터를 필터링하는 드롭 다운 옵션이 있어야합니다. 1-2 명의 승인 된 직원 만이 데이터를 1 주일에 1-2 회 새로 고침해야합니다.

우려 사항 :
제안 사항 Powerpoint for Excel 2010이 설치되기 전에 종속성이 필요했습니다. 편의성이 뛰어나며 VBA 코드를 엉망으로 만들지 않고도 SQL 쿼리를 편집 할 수 있습니다. 그러나 종속성 설정 (데이터 연결 용 Oracle 클라이언트)은이를 솔루션으로 부담없이 배포합니다.

데이터 연결 및 쿼리와 데이터 조회는 모두 VBA와 할당 된 매크로에서 수행 할 수 있습니다.

Questions : PowerQuery를 사용하여 데이터를 쿼리 한 다음 두 번째 시트 LOOKUP 및 날짜 범위 필터링에 VBA를 사용해야합니까? 아니면 모두 VBA Excel 매크로로 작성해야합니까?

미래에 어느 정도 친숙한가요? Power Query를 사용하면이 작업을 비 코더에게 더 편하게 편집 할 수 있다는 장점이 있습니까?

감사합니다.

+0

VBA에서 Power Query 또는 ADO를 사용하는지 여부에 관계없이 Oracle 클라이언트가 설치되어 있어야합니다. 그것은 DB 연결에 필요합니다. SQL 편집과 관련하여 쉽게 조정할 수있는 워크 시트 (필요에 따라 숨김)에 쿼리를 저장할 수 있습니다. –

답변

1

이것은 VBA없이 PowerQuery를 통해서만 해결할 수 있습니다. Excel 테이블에 쿼리를 저장하지 않는 것이 좋습니다. 서버에서 이동하는 것이 가장 좋습니다. 보기 또는 기능이 적합합니다. 이 뷰/함수를 편집하면 데이터베이스를 쿼리하여 승인 된 사용자에 대해서만 작동합니다. 이것은 더 안전하며 Excel 통합 문서가 하나만 필요합니다. PowerQuery에서는 테이블을 새로 고칠 때 테이블의 이전 복사본을 참조 할 수 있으므로 입력 된 데이터를 유지하고 새로운 데이터를 얻을 수 있습니다.

프로젝트는 제게 임시 방편으로 보입니다.

+0

솔루션이 임시적이라는 것이 맞습니다. 분석가가 새 데이터베이스로 이동할 때 TNS 정보를 나중에 쉽게 변경할 수있는 방법이 필요합니다. 나는 그때 주변에 있지 않을 것이다. 그리고 그들은 다른 누군가에게 그것을 바꾸는 것을 거의 거만하게 힘쓸 것이다. –

+0

PowerQuery를 계속 사용하는 경우 vba를 사용하여 쿼리 된 테이블을 복사하고 드롭 다운 날짜 범위 필터를 추가하고 새로 고침 버튼을 추가 할 수 있습니까? PowerQuery에서 vba를 사용하지 않고 모든 작업을 수행 할 수 있습니까? –

+0

@JonStarnes PowerQuery는 일반적으로 테이블에 대한 데이터 소스이므로 결과 테이블에서 원하는 모든 작업을 수행 할 수 있습니다.하지만 새로 고침 (행 추가 및 삭제)을 명심하십시오. 네가 필요로하는 칼럼에 대해 명명 된 범위를 지정하면된다. – Eugene