|
tootsie さん、おはようございます。
>「マクロの記録」を使ってマクロを作りました。それを繰り返して行わせるには、Loopという命令方法があるようですが、その前に「Do While xxxx」または「Do Until xxxx」が必要だというところまでは判明しました。それをいろいろな場所に入れて試したのですが、さっぱりだめです。どこにどのように挿入すればいいか、おわかりでしたらご教授願えませんか。
Execute メソッド (Find オブジェクト)
指定された検索を実行します。検索が正しく実行できた場合、True を返します。
ということなので、TRUEを返すかどうかでLOOPを続けるかどうか判定します
'
Sub ANSA()
Dim tf As Boolean 'ブール型
'そのまま使用
Selection.HomeKey Unit:=wdStory
Selection.Find.ClearFormatting
'検索条件設定(そのまま使用)
With Selection.Find
.Text = _
"------------------"
.Replacement.Text = "^m"
.Forward = True
.Wrap = wdFindContinue
.Format = True
.MatchCase = False
.MatchWholeWord = False
.MatchByte = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = False
.MatchFuzzy = False
'========================
'繰り返すのはここから
tf = .Execute '検索実行:成功したらTRUE
Do While tf = True 'tf = True 間、Do〜Loop間を繰り返す
Selection.Delete Unit:=wdCharacter, Count:=1
Selection.MoveDown Unit:=wdLine, Count:=3, Extend:=wdExtend
Selection.Delete Unit:=wdCharacter, Count:=1
Selection.InsertBreak Type:=wdPageBreak
Selection.MoveDown Unit:=wdLine, Count:=1
Selection.Style = ActiveDocument.Styles("見出し 1")
'次を実行
tf = .Execute
Loop
'========================
End With
End Sub
こんな感じです。
|
|