|
ワイルドカードを使って検索し、
その検索した文字列範囲を取得すれば、
「」に囲まれてる部分を抜き出すことが可能です。
検索する文字列を『 「*」 』と指定します。
(* は、任意の長さの文字列を意味します。)
どこへ抜き出すのか判りませんが、
ここでは、抜き出した文字列を新しい文書に引き渡すと解釈します。
Sub myTypeText()
Dim myStartMarker As Word.Range ' 検索開始点
Dim DocOne As String ' 原典文書ファイル名
Dim DocNew As String ' 新規文書ファイル名
Dim myText As String ' 抜き出し文字列
'
Rem 検索開始点の取得。
Rem カーソルが文章の途中にあると、不都合が起こるので、
Rem 単語の先頭に移動する。
Set myStartMarker = Selection.Range
Selection.Sentences(1).Select
Selection.Collapse wdCollapseStart
'
Rem 原典文書ファイル名の取得。
DocOne = ActiveDocument.Name
'
Rem 抜き出し先文書ファイル名の取得。
Documents.Add
DocNew = ActiveDocument.Name
Documents(DocOne).Activate
'
Rem 検索開始(ワイルドカードを使用)。
Rem 『「*」』を検索。
With Selection.Find
.ClearFormatting
.Text = "「*」"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindStop
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchByte = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchFuzzy = False
.MatchWildcards = True
End With
'
Rem 検索実行。文字列抜き出し。
Do While Selection.Find.Execute
myText = Selection.Range.Text
myText = Mid(myText, 2, Len(myText) - 2)
'
Documents(DocNew).Activate
Selection.TypeText Text:=myText & vbCr
'
Documents(DocOne).Activate
Selection.Collapse wdCollapseEnd
Loop
'
Rem 検索開始点に戻る。
myStartMarker.Select
MsgBox "検索終了!"
'
Rem 新規文書ファイルの表示。
Documents(DocNew).Activate
Selection.HomeKey Unit:=wdStory
End Sub ' myTypeText
|
|