Wordでは、ドキュメントに行番号を追加できます。これはまさにそれが言っていることを意味します—ドキュメントの各行は最初から最後まで番号が付けられています。これは、法的文書などの特別な文書を作成する場合、または後で参照するために行ごとにハードコピーを印刷する場合に非常に役立ちます。

連続した行番号がオンになっているドキュメントを印刷すると、Wordは最初から最後まですべての行に番号を付けます。ただし、選択範囲のみを印刷する場合(選択範囲を作成し、[印刷]ダイアログボックスを表示し、印刷対象として[選択範囲]が指定されていることを確認してください)、Wordは行番号を正しく印刷しません。 Wordは、選択範囲の行に、ドキュメント全体であるかのように番号を付けます。1つから始まり、選択範囲に進みます。 Wordが、選択内容がドキュメント内で実際に何を表しているかに応じて行番号を印刷する方がよいと考えられます。たとえば、57行目から72行目を選択して印刷した場合、Wordは1から15ではなく、57から72の数字を印刷出力の左側に印刷する必要があります。

残念ながら、この問題を回避する簡単な方法はありません。回避策の1つは、選択範囲を印刷しないことです。 (この提案は、意図したものよりも派手に聞こえるかもしれません。)代わりに、ページを印刷します。 [印刷]ダイアログボックスで、選択範囲ではなく、印刷するページ範囲を指定します。 Wordは、ドキュメントの最初から番号を付けているかのように、行番号を適切に保ちます。

もう1つのオプションは、マクロを使用して「ダーティワーク」を実行することです。マクロを使用して、選択に使用した開始行番号をリセットできます。以下は、開始行番号を要求し、その行番号を左側に印刷される最初の番号として使用して選択を印刷する単純なマクロです。 (このマクロは、指定した行番号で印刷を開始しないことに注意してください。指定した番号を選択の開始行番号として使用します。)

Sub LineNumbersPrint()

Dim LineNumberStart As Integer     On Error GoTo GetOut

LineNumberStart = InputBox("First line number for printout?", _       "Line Numbers Printout")



With ActiveDocument.PageSetup         With .LineNumbering             .Active = True             .StartingNumber = LineNumberStart         End With     End With

ActiveDocument.PrintOut , Range:=wdPrintSelection

With ActiveDocument.PageSetup         With .LineNumbering             .Active = True             .StartingNumber = 1         End With     End With

GetOut:

End Sub

このマクロの使用は、実際に印刷する前に、選択した行番号を検索することを前提としています。これは、Wordの印刷プレビュー機能を使用して実行できますが、しばらくすると面倒になる可能性があります。かなりの数の選択印刷を行う場合は、次のマクロの方が興味深いでしょう。より複雑ですが、選択の開始時に使用する適切な行番号を自動的に決定してから、選択を出力します。

Sub Correct_Line_Numbers()

Dim myRng As Range     Dim StartRng As Range     Dim iCount As Integer

'if you include the paragraph mark in your selection, then Word 'prints the subsequent line number; not the entire line, just the 'line number; therefore, if the last character of the current 'selection is a paragraph mark, then move the end position of 'the selection to the left by one character     If Selection.Characters.Last = Chr(13) Then         Selection.MoveEnd Count:=-1     End If

'set the current selection to a variable     Set myRng = Selection.Range

'set the start of the document to a variable     Set StartRng = ActiveDocument.Paragraphs(1).Range

With Selection         'go to the beginning of the line for the current selection and         'set the iCount variable so that it counts the current line         .HomeKey unit:=wdLine         iCount = 1

'if the cursor is not at the beginning of the document         'then move the cursor up by one line         'increment iCount by one each time the cursor is not at         'the beginning of the document         While Not Selection.InRange(StartRng)

.MoveUp unit:=wdLine             iCount = iCount + 1             'if the cursor is in a table, then the macro should             'reduce iCount; Word counts an entire table as one line             If Selection.Rows.Count > 0 Then                 iCount = iCount - 1             End If         Wend     End With

'reset the starting line number so that it equals the     'number of times the cursor was moved up by a line     ActiveDocument.PageSetup.LineNumbering.StartingNumber = iCount

'reselect the original selection     myRng.Select

'print out only the original selection     ActiveDocument.PrintOut Range:=wdPrintSelection

'reset the line number(by "undoing" the last two actions     '[fields update and change line number])

'so that line numbering begins at one     ActiveDocument.Undo     ActiveDocument.Undo

'reselect the original selection     myRng.Select End Sub

このマクロには注意点が1つあります。ドキュメント内に隠しテキストがあり、その隠しテキストは表示されているが印刷するように設定されていない場合でも、このマクロはそれらのテキスト行を印刷するかのようにカウントします。つまり、マクロは、非表示のテキストが画面に表示されている場合、それを印刷していると想定します。

注:

このページ(または_WordTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

link:/ wordribbon-WordTipsMacros [ここをクリックして、新しいブラウザタブでその特別なページを開きます]

_WordTips_は、費用効果の高いMicrosoftWordトレーニングのソースです。

(Microsoft Wordは、世界で最も人気のあるワードプロセッシングソフトウェアです。)このヒント(1525)は、Microsoft Word 97、2000、2002、および2003に適用されます。Wordのリボンインターフェイス(Word 2007)用のこのヒントのバージョンを見つけることができます。以降)ここ:

link:/ wordribbon-Correct_Line_Numbers_when_Printing_Selections [選択範囲を印刷するときの正しい行番号]