2017-11-23 4 views
1

Word 문서를 열고 조작하는 Excel에서 매크로를 작성하고 있습니다. 이 코드는 VBA 편집기를 통해 실행할 때 작동하지만 Excel의 매크로에 코드 행을 가져 오면 런타임에 438 오류가 발생합니다.Excel 매크로의 Word Selection 개체 사용

워드 매크로

Selection.Collapse WdCollapseDirection.wdCollapseEnd 

코드 wtemp가

wtemp.Activate 
wtemp.Tables(3).Select 
wtemp.Activate 
wtemp.Selection.Collapse WdCollapseDirection.wdCollapseEnd 

내가 문제가 선택 개체있다, 또는 내가 참조를 놓치고 있다고 생각 워드 문서 객체에게 존재로, 엑셀 매크로에 삽입 . 나는에서 VBAProject에 포함 된 한 참고 문헌은 다음과 같습니다 응용 프로그램

  • 의 Microsoft Excel 16.0 개체 라이브러리
  • OLE 자동화
  • 마이크로 소프트 오피스 16.0 오피스 도서관
  • 마이크로 소프트 워드 16.0 오피스 도서관
  • 에 대한

    • 비주얼 베이직
    • Microsoft Forms 2.0 개체 라이브러리
    • Microsoft Scripting 런타임

    답변

    3

    문서 개체에는 Selection 속성이 없지만 Word 응용 프로그램에는 없습니다. 당신이 말씀 응용 프로그램에 대한 참조가있는 경우

    , 당신은 다음과 같은 코드를 사용할 수 있습니다

    Dim wd As Word.Application 
    Set wd = GetObject(, "Word.Application") 
    
    Dim wtemp As Word.Document 
    Set wtemp = wd.ActiveDocument 
    
    wtemp.Activate 
    wtemp.Tables(3).Select 
    wtemp.Activate 
    wd.Selection.Collapse WdCollapseDirection.wdCollapseEnd