0

MSWord ページ ヘッダーに配置された 2 つのブックマークの間のテキスト コンテンツを見つける方法を探しています。

2 つのブックマークが BKM_1 と BKM_2 であるとします。また、2 つのブックマークの間のテキストは「Test」です。

Local loWordApplication, loDoc, loRange
loWordApplication = CREATEOBJECT("Word.Application")
loDoc = loWordApplication.Documents.Open("C:\Example.doc")
IF loDoc.BookMarks.EXISTS("BKM_1") AND loDoc.BookMarks.EXISTS("BKM_2") 
   loRange = loDoc.RANGE(loDoc.BookMarks("BKM_1").START, loDoc.BookMarks("BKM_2").START) 
   loRange.SELECT
   ?loRange.TEXT && Printing the value here and expecting the result as "Test"
ENDIF

しかし、ブックマークが存在するにもかかわらず、上記は私が探している結果を生成しません。助けてください!

4

1 に答える 1

1

ヘッダー、フッターは別の種類のストーリーです<g>-しゃれは意図されていません:

#Define wdCharacter 1
Local loWordApplication, loDoc, loRange
loWordApplication = Createobject("Word.Application")
loDoc = loWordApplication.Documents.Open("C:\Example.doc")
If loDoc.BookMarks.Exists("BKM_1") And loDoc.BookMarks.Exists("BKM_2") And ;
        loDoc.BookMarks("BKM_1").StoryType = loDoc.BookMarks("BKM_2").StoryType
    Local lnCharacters
    lnCharacters = loDoc.BookMarks("BKM_2").Start-loDoc.BookMarks("BKM_1").Start
    If loDoc.BookMarks("BKM_1").StoryType != 1
        loDoc.StoryRanges(loDoc.BookMarks("BKM_1").StoryType).Select()
    Endif

    loDoc.BookMarks("BKM_1").Range.Select()
    loDoc.Application.Selection.Moveend(wdCharacter, m.lnCharacters)

    loRange = loWordApplication.Selection

    ?loRange.Text && Printing the value here and expecting the result as "Test"
Endif
loWordApplication.Quit
于 2012-12-05T15:56:36.283 に答える