• ベストアンサー

Wordで段落番号を固定→校閲→振り直しをやりたい

Word 2003、2007を使って学校の授業に使う問題を作成しています。約1000題ほど10種の分野ごとに番号付けをしています。 問1-1、問1-2、・・・問2-1、・・・問10-1という感じで全体では1000ほど100ページほどの分量です。 さて、授業の都合上この問題集は半年ごとに見直しを行っており、約100題を削除し新たに100題を追加するのですが、Wordの「段落番号」という便利な機能の存在を知りながら、使っておりません。 なぜかというと、問題の入れ替えのとき古い問題を印刷し、赤入れ校閲作業を紙上で行い、結果を入力する手順を踏むわけであり、その際にWordの問題番号が自動的に振られてしまうと赤入れ原稿と番号がずれてしまうのです。古い問題の削除・新問題の追加は1日で終わりきればいいのですが、問題の入力作業は2週間ほどかかる量であり、問題番号がずれるのは作業の進み具合を確認するのに不都合なのです。 さて、削除・追加を完了し終えると最後に番号を通し番号で振り直す作業に移ります。ここがまたもやひと山の作業となるのです。 前述のとおり全体で1000題近くの分量で分野ごとに通し番号を付けるので、ここが単純ながら肉体労働となるのです。 そこで皆さんに伺いたいことは、このような番号管理を段落番号機能を活用してうまく作業効率を改善する方法があるかということなのです。単純に自動的に振られる番号を一時的に固定化させ、校閲作業後にもう一度通し番号を自動的に付けるうまい方法はないでしょうか? もしや、これはVBAの手助けを借りることしかないのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • koko88okok
  • ベストアンサー率58% (3839/6543)
回答No.1

Wordの「アウトライン」と「グループ文書」が使えるのではないかと思います。(かなり省力化が可能と思います。) ただし、実務の経験がありませんので、URLのご紹介しかできません。悪しからず・・・ 「ワードのアウトラインを理解する」 http://www.sharp-pcstudio.com/disp.asp?cno=5&tbno=0&dno=128 「段落スタイルとアウトライン」 http://www.grapecity.com/japan/dth/help/WordDocuments/_3.htm 「MS-Wordによるアウトライン(書式設定)の設定方法」 http://oshiete1.goo.ne.jp/qa2672047.html 「グループ文書」 http://office.microsoft.com/ja-jp/word/CH060829811041.aspx 「グループ文書とサブ文書を作成する」 http://office.microsoft.com/ja-jp/word/HP051870021041.aspx

ayikay06o4
質問者

補足

koko88okokさん、回答ありがとうございます。 >「グループ文書」 ヒントになりそうですが、そうすると貧困な想像ですが、私の場合問題1つを1つの.docファイルにして、束ねるグループを作ると理解しました。これは魅力的ですが別の意味で管理作業が大変そうです。 >「アウトライン」 今まで「下書き」や「印刷」と並ぶ「画面の表示」種類の1つと理解していました。実際に、スタイルの「見出し1」「見出し2」を「分野」「問題番号」に割り当てて作成しており、番号を振り直す際には「アウトライン」表示に切り替えて一気に1000題の番号付けを入力していました。 ところでkoko88okokさんの回答に思いついて、「箇条書きと段落番号」を見たところ(Word2003)、設定画面の3番目に「アウトライン」というタブがありますね。ここで「変更」ボタンを押して「アウトライン番号の書式設定」を見ると「レベルと対応付けるスタイル」という欄があり、さっそくレベル1→見出し1、レベル2→見出し2とし、さらにレベル2の番号形式を「問1-1」などとしたところ、私が望んだ後半の「番号の振り直し」が実現できそうな気がします。 これがあれば、残った課題は赤入れ・校閲をどうつなげるかということだけですね。

その他の回答 (2)

  • koko88okok
  • ベストアンサー率58% (3839/6543)
回答No.3

ANo.1です。 > >「グループ文書」 > ヒントになりそうですが、そうすると貧困な想像ですが、私の場合問題1つを1つの.docファイルにして、束ねるグループを作ると理解しました。これは魅力的ですが別の意味で管理作業が大変そうです。 100ページほどとありましたので、 問題1-1、問題1-2、・・・を1つのファイル 問題2-1、問題2-2、・・・を1つのファイル ・ ・ で、10ファイル程度のイメージです。 100ページもあるとスクロールなどが大変ではないかと思いました。 > 「番号の振り直し」が実現できそうな気がします。 私も、この機能がご希望に合っているのではないかと思っていますが、先にも書きましたように、存在は知っているものの実務では使っていませんので、『これが使えますよ』と言えないところです。

ayikay06o4
質問者

お礼

koko88okokさん、たびたびにありがとうございました。 考えた挙句で結局以下のようなマクロを書いてしまいました。これで一括変更でき、所望の作業ができるようになりました。 自己レスでお騒がせしたこと、申し訳ございませんでした。 以下、私が書いてみたマクロです。ちなみに、作成した問題集は改ページの都合で3段組みにしており、その段組みを検出するために少々手の込んだIF文を入れています。 ~~~~~~ Sub 連番付け替えマクロ() ' ' 連番付け替えマクロ Macro ' 作成日 2008/02/13 ' Dim headLevel1 As Integer Dim headLevel2 As Integer Dim para As Paragraph headLevel1 = 0 For Each para In ActiveDocument.Paragraphs If para.Style = "見出し 1" Then headLevel1 = headLevel1 + 1 headLevel2 = 0 para.Range.Select Selection.HomeKey Unit:=wdLine End If If para.Style = "見出し 2" Then headLevel2 = headLevel2 + 1 para.Range.Select Selection.HomeKey Unit:=wdLine Selection.MoveRight Unit:=wdCharacter, Count:=1, Extend:=wdExtend ' 段組みがあれば、右へ4つ選択する。 _ 普通の段落であれば、先頭から4語選択 _ つまり↑で1語選択しているので、残り3語選択 If Asc(Selection.Text) = 14 Then '段組みの判定 Selection.MoveRight Unit:=wdCharacter, Count:=1 Selection.MoveRight Unit:=wdWord, Count:=4, Extend:=wdExtend Else Selection.MoveRight Unit:=wdWord, Count:=3, Extend:=wdExtend End If Selection.Delete Unit:=wdCharacter, Count:=1 Selection.TypeText Text:="問" & _ headLevel1 & "-" & _ headLevel2 & " " End If Next para End Sub

回答No.2

メモ帳等を利用されるのどうでしょうか? Word文章を印刷し赤入れ後、実際に追加・削除の作業をする時はメモ帳で行うんです。 ちなみにWord文章をメモ帳として保存する方法は名前をつけて保存の際にメモ帳形式を選んで頂ければ簡単です。 メモ帳上で作業を行った後、今度はWord形式で保存します。 保存したWord文章を開くと段落番号が飛び飛びになっていると思いますので段落機能を使って振りなおせば簡単だと思います。 段落機能はご存知とのことなので説明は省かせて頂きます。 質問の意図からずれていたらすみません。

ayikay06o4
質問者

お礼

picopico_7さん、ありがとうございます。 説明が足りませんでしたが、問題中には数式、図、表が大量に含まれるためメモ帳形式(すなわちテキスト形式)に保存した場合にはそれらが欠落しますね。 説明不足すみませんでした。

関連するQ&A