こんにちは。
私は、このご質問だけでは意味を正確に理解しているわけではありません。実際の、例を示してくれるとありがたいです。
例えば、パラグラフの先頭にある記号に対して、その後ろに、タブを入れるなら以下のようになります。パラグラフの先頭にないものは、作り直さなくてはなりません。
[パラグラフ]は、ひとつの文章のまとまりです。上と下の行が独立していることを意味します。
例:
■ワードのマクロまたはVBAで以下のようなことが可能かおしえてください。
○どうもマクロではできないようなのですがVBAなら可能でしょうか?
↓
[以下のマクロ実行後結果]
■ ワードのマクロまたはVBAで以下のようなことが可能かおしえてください。
○ どうもマクロではできないようなのですがVBAなら可能でしょうか?
(上記は、タブを全角スペースで表現しています)
(マクロの結果-この場合は、マクロとVBAは同義になります)
Sub AddEnterTabProc()
'インデント付け
Dim Re As Object
Dim Match As Object
Dim Matches As Object
Dim para As Paragraph
Dim Reptext As String
Set Re = CreateObject("VBScript.RegExp")
Selection.HomeKey Unit:=wdStory
Selection.EndKey Unit:=wdStory, Extend:=wdExtend
With Re
.IgnoreCase = False
.Global = False
.Pattern = "(([■-◯]|\d)+\.*).*"
For Each para In Selection.Range.Paragraphs
firsttext = Left(para.Range.Text, 10)
If .Test(firsttext) Then
Set Matches = .Execute(firsttext)
If Matches.Count > 0 Then
Set Match = Matches(0)
Reptext = .Replace(Match.Value, "$1")
para.Range.Select
Selection.MoveStart Unit:=wdCharacter, Count:=Len(Reptext)
Selection.MoveRight Unit:=wdCharacter, Count:=Len(Reptext), Extend:=wdExtend
Selection.InsertBefore vbTab
End If
End If
Next para
End With
Set Re = Nothing
Selection.HomeKey
End Sub
お礼
お礼が遅くなり申し訳ありません。 パラグラフの先頭にある記号に対してだったので, 回答して頂いたとおりでできました! ありがとうございました。