2011-08-02 4 views
0

Excel 개체를 만드는 Access 프로그램이있어 데이터를 기본적으로 내보내는 프로그램입니다. 우리는 2007 MS Excel 응용 프로그램이 설치되어 있지 않은 위치에서이 프로그램을 실행하려고합니다. 또한 우리는 전체 구현 (ADO 대체)을 다시 작성하기를 원하지 않습니다. 현재이 앱은 Create.Object ("Excel.Application") 메소드를 사용하여 Excel에서 작업합니다.VBA를 사용하면 Excel Viewer 만 설치된 Excel 개체가 생성됩니다.

다른 말로하면 MS Access에서 Excel에 전체 버전을 설치하지 않고도 Microsoft Excel Object Library에 대한 참조를 가져 오거나 얻을 수 있습니까?

우리는 이와 같은 몇 가지 다른 질문을 참조 : How to refer to Excel objects in Access VBA?

우리는 또한뿐만 아니라 MSFT에서 Office 주 Interop 어셈블리 (PIA)를 설치했습니다. 우리는 MS Access 2003을 실행 중이며 Excel 2007 Viewer를 사용하고자합니다.

아이디어가 있으십니까?

브렌트

+0

MSFT의 PIA (Office Primary Interop Assemblies)는 이와 관련이 있습니까? 그게 Dot Net이 아닌가? VBA와 관련이 있습니까? – HansUp

+0

나는 Excel 뷰어가 자동화를 위해 Excel의 모든 기능을 제공 할 것을 강력히 의심합니다. 귀하의 유일한 유일한 해결책은 완전한 Excel 자동화에 대한 의존성을 제거하는 것입니다. 당신이하려는 일에 따라 문제가 될 수도 있고 아닐 수도 있습니다. –

+0

@HansUp 제 생각에 그것이 도움이되는지 아닌지를보기 위해 노력했습니다. 나는 대답하려고하는 누군가가 전체 그림을 갖도록하기 위해 우리가 시도한 것의 전체 사슬을 게시했다. –

답변

0

내가 DoCmd.OutputTo 엑셀 라이브러리없이 작동해야한다고 생각은 : 그 두 참조와 함께 작동해야처럼

DoCmd.OutputTo acOutputTable, "Your object/query name", "Excel97-Excel2003Workbook(*.xls)", "Full path to the destination" 

보인다 :

enter image description here

를이 그래도 유연성을 제한 할 수 있습니다 (예 : 맞춤 서식 지정 등)

+0

이고르, 당신 말이 맞아요. Access가 내장 함수를 사용할 때 잘 할 수있을 것 같습니다. 그러나 필자가 내 포스트에서 말했듯이, 우리는 존재하는 코드 (상용 제품)를 수정하려고 시도하지 않고 있습니다. Access에서 Excel 라이브러리를 사용하기를 원하거나, 수동으로 복사/등록하는 경우가 있습니다. 그럼에도 불구하고 나는 이것을 통과시켜 그것이 효과가있을지를 알아 보겠다. –

+0

Igor, 오늘 귀하의 제안을 시도했지만 OutputTo 명령조차도 실행되지 않습니다. 필요한 구성 요소가 존재하지 않는 유사한 오류로 실패합니다. 실제로 Excel을 설치하지 않고 참조를로드/참조 할 수있는 방법이 있습니까? –

+0

@ 브렌트, _DoCmd.OutputTo_가 왜 작동하지 않았는지 잘 모르겠습니다. 나는 그것을 직접 테스트했고 완벽하게 잘 동작했다. Access 2007에서 테스트 해 보았습니다. Access 2007 데이터베이스로 패키지 (런타임)를 생성하고 Access 또는 Excel이 설치되지 않은 시스템에 설치했습니다. 완벽하게 잘 작동했습니다. Excel 스프레드 시트로 데이터를 내보낼 수있었습니다. 그러나 다시, 이것은 당신을위한 가장 우아한 해결책이 아닐 수도 있습니다. –

관련 문제