返回列表 上一主題 發帖

[發問] 如何取得二段中間的字串 (WORD VBA )

[發問] 如何取得二段中間的字串 (WORD VBA )

工作上的需求及VBA寀鳥 ,請問假設一篇 word  內容如下:

----------------word  begin---------------------
無關緊要1
無關緊要2
          <抬頭>
我要的內容1
我要的內容2
我要的內容3
我要的內容4
   <結尾>  
       我還有很多1
        我還有很多2
         我還有很多3
----------------word  end-----------------------

問題:
請問各位先進,我要取得 <抬頭> 到 <結尾>的內容 (不包含抬頭及 結尾)  如下:

我要的內容1
我要的內容2
我要的內容3
我要的內容4

我的想法是用 range.find 分別找出 <抬頭> 和 <結尾> 的行號,再從  <抬頭>+1  找到 <結尾>-1 的資料,但VBA功力太弱,可以請各位大神 幫忙一下,謝謝。

D2:D6{=INDEX(B:B,SMALL(IF((ROW(B$3:B$14)>MATCH(,0/FIND("抬頭",B$3:B$14),)+2)*(ROW(B$3:B$14)<MATCH(,0/FIND("結尾",B$3:B$14),)+2),ROW(B$3:B$14),4^8),ROW(A1)))&""

E2:E6{=IF(MATCH("          <抬頭>",B:B,)+ROW(A1)>=MATCH("   <結尾>  ",B:B,),"",INDEX(B:B,MATCH("          <抬頭>",B:B,)+ROW(A1)))

F2:F6{=IF(MATCH(,0/FIND("抬頭",B$3:B$14),)+ROW(A1)>=MATCH(,0/FIND("結尾",B$3:B$14),),"",INDEX(B:B,MATCH(,0/FIND("抬頭",B$3:B$14),)+ROW(A1)+2))

5208.png (22.69 KB)

5208.png

google"EXCEL迷"  blog  或google網址:https://hcm19522.blogspot.com/

TOP

謝謝 hcm19522 先進的回覆 : ) , 只是我要的是 office word 的解法,呵呵!!!:)

TOP

SELECTION.Find.Execute FindText:="<抬頭>"
   SELECTION.EndKey unit:=wdLine
  SELECTION.HomeKey unit:=wdStory, Extend:=wdExtend
a=selection.range.characters.count
SELECTION.homeKey
   SELECTION.Find.Execute FindText:="<結尾>"
   SELECTION.homeKey unit:=wdLine
  SELECTION.HomeKey unit:=wdStory, Extend:=wdExtend
b=selection.range.characters.count
Set myRange = ActiveDocument.Range(Start:=a, End:=b)
msgbox  myRange

TOP

        靜思自在 : 自己害自己,莫過於亂發脾氣。
返回列表 上一主題