<p dir="ltr">Wordマクロのサンプル、文中から、Wordの解釈する文字、単語、文、段落を取得させるサンプル</p>
<p dir="ltr">各々のオブジェクトにそってRangeオブジェクトを取得させるようにしている。</p>
<p dir="ltr">サンプルとしては、通し番号、オブジェクトの開始位置(文字、単語、文、段落の開始位置)とオブジェクトの終了位置(文字、単語、文、段落の終了位置)、オブジェクト内の文字列(文字、単語、文、段落)を出力させている。</p>
<p dir="ltr">ちょっと、Wordの概念とオブジェクトが見えてきた。</p>
<p dir="ltr">
<blockquote dir="ltr">
<p>Sub 文中の文字を取得1()</p>
<p> Debug.Print "文字数=" & Me.Words.Count<br /> Dim r As Range<br /> Dim i As Integer<br /> For Each r In Me.Characters<br /> Debug.Print i & "字" & "," & r.Start & "," & r.End; "," & r.Text<br /> i = i + 1<br /> Next r<br />End Sub</p>
</blockquote>
<p dir="ltr">
<p dir="ltr">
<blockquote dir="ltr">
<p>Sub 文中の単語を取得1()</p>
<p> Debug.Print "文字数=" & Me.Words.Count<br /> Dim r As Range<br /> Dim i As Integer<br /> For Each r In Me.Words<br /> Debug.Print i & "文字" & "," & r.Start & "," & r.End; "," & r.Text<br /> i = i + 1<br /> Next r<br />End Sub</p>
</blockquote>
<blockquote dir="ltr">
<p>Sub 文中の文を取得1()</p>
<p> Debug.Print "文字数=" & Me.Words.Count<br /> Dim r As Range<br /> Dim i As Integer<br /> <br /> For Each r In Me.Sentences<br /> Debug.Print i & "文" & "," & r.Start & "," & r.End; "," & r.Text<br /> i = i + 1<br /> Next r<br />End Sub</p>
</blockquote>
<blockquote dir="ltr">
<p>Sub 文中の段落を取得1()</p>
<p> Debug.Print "文字数=" & Me.Words.Count<br /> Dim p As Paragraph<br /> Dim r As Range<br /> Dim i As Integer<br /> <br /> For Each p In Me.Paragraphs<br /> Set r = p.Range<br /> Debug.Print i & "段落" & "," & r.Start & "," & r.End; "," & r.Text<br /> i = i + 1<br /> <br /> Next p<br />End Sub</p>
</blockquote>
Wordマクロのサンプル、文中から、Wordの解釈する文字、単語、文、段落を取得させるサンプル
各々のオブジェクトにそってRangeオブジェクトを取得させるようにしている。
サンプルとしては、通し番号、オブジェクトの開始位置(文字、単語、文、段落の開始位置)とオブジェクトの終了位置(文字、単語、文、段落の終了位置)、オブジェクト内の文字列(文字、単語、文、段落)を出力させている。
ちょっと、Wordの概念とオブジェクトが見えてきた。
Sub 文中の文字を取得1()
Debug.Print "文字数=" & Me.Words.Count
Dim r As Range
Dim i As Integer
For Each r In Me.Characters
Debug.Print i & "字" & "," & r.Start & "," & r.End; "," & r.Text
i = i + 1
Next r
End Sub
Sub 文中の単語を取得1()
Debug.Print "文字数=" & Me.Words.Count
Dim r As Range
Dim i As Integer
For Each r In Me.Words
Debug.Print i & "文字" & "," & r.Start & "," & r.End; "," & r.Text
i = i + 1
Next r
End Sub
Sub 文中の文を取得1()
Debug.Print "文字数=" & Me.Words.Count
Dim r As Range
Dim i As Integer
For Each r In Me.Sentences
Debug.Print i & "文" & "," & r.Start & "," & r.End; "," & r.Text
i = i + 1
Next r
End Sub
Sub 文中の段落を取得1()
Debug.Print "文字数=" & Me.Words.Count
Dim p As Paragraph
Dim r As Range
Dim i As Integer
For Each p In Me.Paragraphs
Set r = p.Range
Debug.Print i & "段落" & "," & r.Start & "," & r.End; "," & r.Text
i = i + 1
Next p
End Sub
ライセンス:本記事のテキスト/コードは特記なき限り
CC BY 4.0 です。引用の際は出典URL(本ページ)を明記してください。
利用ポリシー もご参照ください。
コメント