2014-10-15 6 views
0

Excel에서 작업 중이므로 단어 문서에 액세스하고 그 안에있는 모든 링크의 파일 경로를 나열하려고합니다. 즉. "C : \ excelfile.xls"Word 문서의 링크 파일 경로

+0

파일 링크/데이터 링크가 필요합니다. 하이퍼 링크가 아닙니다. 링크 된 문서. 모든 데이터 소스 목록이 필요합니다. 감사. – gemmo

답변

2

을 확인할 수 있습니다,이 시도 :

Sub due() 
    Dim msWord As Object 
    Dim msDoc As Object 
    Dim msHlink As Object 

    Set msWord = GetObject(, "Word.Application") 
    Set msDoc = msWord.Documents(1) 'change to suit 

    For Each msHlink In msDoc.Hyperlinks 
     Debug.Print msHlink.Address 
    Next 
End Sub 

Excel과 동일한 단어는 Hyperlinks Collection이며 문서의 사용 가능한 모든 하이퍼 링크에 액세스 할 수 있습니다.

EDIT1 : 당신이 InlineShapes 컬렉션에 접근 할 필요가Excel 개체의 링크를 포함하세요. 같은
뭔가 :

Sub due() 
    Dim msWord As Word.Application 
    Dim msDoc As Word.Document 
    Dim iShp As Word.InlineShape 

    Set msWord = GetObject(, "Word.Application") 
    Set msDoc = msWord.Documents(1) 'change to suit 

    For Each iShp In msDoc.InlineShapes 
     Debug.Print iShp.LinkFormat.SourceFullName 
    Next 
End Sub 

InlineShape object에 대한 모든 사용 가능한 속성을 얻을하려면, 마이크로 소프트 워드 XX.0 개체 라이브러리에 대한 참조를 추가해야합니다. 앞서 초기 바인딩을 사용했음을 유의하십시오. HTH.

+0

'.Hyperlinks'는 +1에 대해 +1하지 않았습니다. –

+0

파일/데이터 링크를위한 파일이 있습니까? 하이퍼 링크가 아닙니다. 즉, 나는 문서를 워드 문서로 엑셀 파일의 테이블을 첨부했습니다 ... 나는 문서를 링크 한 모든 엑셀 파일의 목록이 필요합니다. – gemmo

+0

@gemmo 예. 당신이 당신의 질문에 링크를 말할 때, 내 마음에 오는 첫 번째 일은 * 하이퍼 링크 *입니다. 하지만 네, 그 객체들에도 접근 할 수 있습니다. 내 편집을 참조하십시오. – L42

0

는이 뜻 : 문서가 열려있는 경우

복사에 대한
Sub OpenWordDocument() 

    dim Word as Object 
    Set Word = CreateObject("word.Application") 

    Word.documents.Open "C:\excelfile.xls" 

    Word.Visible = True 

End Sub 

당신이 this answer

관련 문제