やまものブログ

メモ書きブログです (^_^;A

Ubuntu で年賀状の宛名印刷 〜 LibreOffice Base によるデータ連携

LibreOffice差し込み印刷を使って年賀状の宛名を印刷してきました。 Calcに住所を列挙し、Writerで作られたハガキの宛名面で差し込み印刷します。 この記事では Writer と Calc のデータベース接続については分かったことをメモとして残します。

今まではウヤムヤなまま使い続けてきました。 今年は年賀状の枚数を絞ったため返信する必要がでてきてしまいました。 そこで返信用の住所データを別名のCalcファイル(.ods)で用意したところ、今更ながら発見できたことをまとめたいと思います。 今年の年末に来年の年賀状を準備する時まで覚えていられるか自信がないので(汗)

まず、昨年の時点で宛名印刷に使ったのが「はがき住所録.ods」と「カスタム縦書き印刷.odt」です。
f:id:wyamamo:20200105164050p:plain
年が明けて、返信用には「返信住所録.ods」を用意して、Writerは「カスタム縦書き印刷.odt」は流用しました。
f:id:wyamamo:20200105164116p:plain

つまり、住所データのCalcファイル(.ods)を「はがき住所録.ods」から「返信住所録.ods」に入れ替える作業が必要になりましたので、その手順を以下にまとめます。
なお、以下で使う LibreOfficeのメニューについては昨年のブログ記事にもまとめています。
Ubuntu で年賀状の宛名印刷(その7) - やまものブログ

Calc: 住所データ「返信住所録.ods」の編集

まず、「返信住所録.ods」を編集しますが、ここで「印刷用住所」というデータベース範囲を指定しました。
f:id:wyamamo:20200105164311p:plain
このデータベース範囲の名称「印刷用住所」は重要です。


Writer: データベースの追加

[挿入(I)]→[フィールド(D)]→[他のフィールド(M)...]→[データベース]で「検索(D)...」をクリックして「返信住所録.ods」を登録します。
f:id:wyamamo:20200105164421p:plain
これによりホームに「返信住所録0.odb」がこっそり作成されます。
f:id:wyamamo:20200105164601p:plain
これが LibreOffice Base が必要な理由だったのですね!


Writer: データベースの「登録名」の変更

[ツール(T)]→[オプション(O)]→[LibreOffice Base]→[データベース]で、データベース名を「返信住所録」から「はがき住所録」へ変更します。 既に古いデータが「はがき住所録」で登録されていたら削除します。 f:id:wyamamo:20200105164643p:plain

以上の設定により、[ファイル(F)]→[印刷(P)]で新しく用意した「返信住所録.ods」で差し込み印刷できます。


「はがき住所録」「印刷用住所」とは?

たとえば、「カスタム縦書き印刷.odt」で「姓」のフィールドにカーソルを重ねると「はがき住所録.印刷用住所.姓」とバルーン表示されます。

f:id:wyamamo:20200105164714p:plain

これで全ての対応がハッキリしたかと思います。以下の通りです。
 ①「データベース名」
 ② Calcで設定した「データベース範囲」
 ③ フィールド名

①「データベース名」はデフォルトでは Calcファイル名から拡張子(.ods)を削除したものになりますが、前出の通り[ツール(T)]→[オプション(O)]で任意に変更できます。

以上、人からもらってとりあえず使っているだけファイル群でしたが、ちょっと読解できてスッキリしました

別件

先ほど、印刷を実行しても反応しないという謎の現象にあたりました。Writerを起動しなおしても解消しません。しかし、Ubuntuを再起動してやり直したら印刷できるようになりました。こんな謎の現象は初めてです。