2013-08-02 2 views
1

워드 문서의 모든 페이지를 반복하고 해당 페이지에 이미지가 포함되어 있는지 확인하고 해당 페이지에 대해 무언가를 수행합니다 (페이지 여백 설정 및 중단 삽입) .Word에서 페이지를 반복하고 이미지가 포함 된 페이지를 찾습니다.

For Each Page in Document.Pages 
    If Page.ContainsImage Then 
     Page.TopMargin = 0 
     DoOtherStuff 
    End If 
Next 
+0

단어 문서에 이미지 유형이 있습니다. 하나의 텍스트가 내장되어 있으며 ('InlineShapes') 두 번째는 부동 ('Shapes')입니다. 문서에 어느 항목이 있습니까? –

+0

내 문서의 대부분의 이미지는 (도형)입니다. –

답변

2

Document 모든 모양을 나타내는 Shapes 컬렉션이 있습니다. 이

shp.Anchor.Information(wdActiveEndPageNumber) 

:

Sub JiggleAllShapes() 
    Dim shp As Shape 

    For Each shp In ActiveDocument.Shapes 
     shp.Anchor.Paragraphs(1).Range.PageSetup.TopMargin = 0 
    Next shp 
End Sub 

우리는 Anchor에서 페이지 번호를 얻을 수 있습니다 : 각각의 모양은 우리가 모양의 페이지, 다른 속성을 TopMargin에 도착하고, 할 수있는 사용하여, Anchor있다 Pages 컬렉션하지만 IMO 유용되지 않습니다 :

이 방법으로
Sub WhatAboutPages() 
    Dim pge As Page 

    For Each pge In ActiveDocument.ActiveWindow.Panes(1).Pages 
     'Debug.Print pge.NothingUsefulHere 
    Next pge 
End Sub 

당신이으로 탐구 할 것이다수집 및 RectangleType을 사용하여 현재 Rectangle이 이미지인지 확인하십시오.

+0

저에게 큰 도움이되었습니다. 질문과 대답에 대해서는 –

+0

+1. 페이지 반복은 나를 위해 완벽하게 작동했습니다. 감사 – Praesagus

관련 문제