まりふのひと

Excelマクロ「Word宛名書き住所漢数字変換」ver.2を使う

パソコン同好会では、ワードの「はがき宛名印刷ウィザード」で作成した宛名書き(右図)には、Excel で作成した住所を使うようにしています。
「はがき宛名印刷ウィザード」では、住所中の半角数字は漢数字に変換してくれますが、全角算用数字は漢数字に変換されません。その他色々な制約があります。
そこで、算用数字を漢数字に変換するエクセルの マクロ を作成しました。

  • このマクロは「Word の宛名書きで使用する Excel 住所録の住所を算用数字を漢数字に変換する」ことを目的にしています。このため、他の目的で使用すると不具合が発生する可能性があります。
    • 漢数字は(当然)全角です。半角算用数字も全角漢数字に変換されます。それと、ハイフン“−”を縦書きにしても、やはり“−”なので、このマクロでは長音“ー”に変換します。
    • Word の宛名書きでは、住所が15文字を超えると2列表示となり体裁が崩れます。
       (1)住所を、住所_1,住所_2 に分割する(2)住所から県名を取る(3)一部の郡名を取る等の対応を行います。
    • 住所録には必要ありませんが、Word の宛名書きに必須の項目を追加する必要があります。

Excel 住所録の形式

Word の宛名書きで使用することを前提にしています。

  1. リスト形式(データベース形式)であること。(必須)
    • 1行目は項目名。
    • 同じ項目名、あるいは項目名がスペースの列があってはいけない。
    • 2行目以降がデータ(住所録)。
    • 途中に空白行を入れない。(名前が空白のはがきを印刷してしまう)
  2. 列を入れ替えた場合、Wordで選択し直す必要がある。
    • Wordとの関連をとった後に列を入れ替えた場合です。
    • 新しい列を右側に追加したのであれば問題ありません。
  3. 並び順は任意。
    • 今、並んでいる順序にはがきが出力されます。
  4. 項目名は下記と同じにする必要はないが、同じがベスト。
    • 項目名が異なると、住所録マクロを使うつど対応させる必要があります。
  5. 必須項目
    • 氏名 (または名前
      • 姓と名の間はスペースを入れます。但し、6文字の場合は Word の制約からスペースは入れません。7文字以上は対応できません。手作業による修正(フォントを小さくする)が必要となります。以下同様です。
    • 欠礼
      • 例えば、今年(2007年)喪中の方は “2007” を入力します。住所録マクロでは 2007 以上のレコードは出力対象外にします。
    • 連名
      • 宛名の左に表示する名前(連名)です。同じ姓場合は「名」のみ入力します。
    • 郵便番号
      • 間に “-” を入れます。半角/全角を問いませんが、半角文字の方がベターです。
    • 住所 (または住所1
      • 県から入力(郵便番号を住所に変換した場合)してかまいません。県、郡は省略してもかまいません。
    • 住所2
      • マンション名等を入力します。
         肩書きとして使用する場合は、下記の「上詰」の項目が必要です。
    • 桁1
      • 入力は不要です。(無視します)
      • 住所録マクロが住所(住所1)の文字数をセットします。16字以上の場合、ハイライトします。これは、はがきの一行に納まらないからです。
  6. 任意の項目
    • 順序
      • 住所録の並び順を入れておく列です。ユーザーが入力します。
    • 上詰
      • はがきの住所2の縦位置を入力します。
        • 1:上詰め ‥‥ 住所2を肩書きに使う場合です。
        • 2:中央
        • 3:下詰め(未入力時)
    • 敬称
      • 敬称(様,先生,御中等)を使い分ける場合です。
    • 部署
    • 役職
      • 氏名の上に表示します。

サンプルデータ

  • まりふのひとの SkyDrive から「WordとExcel&マクロで作る宛名書」 (圧縮(zip形式)フォルダ)をダウンロードします。
  • 自分の住所録があるフォルダに解凍するのがベストです。別のフォルダでも問題ありません。
    解凍すると、次のファイルが出来ます。
    1. 住所録マクロ (Microsoft Excel ワークシート)
      • 漢数字変換を行う Excel のマクロファイルです。
    2. Word宛名書き専用住所録.xls (Microsoft Excel ワークシート)
      • 「住所録マクロ」が作る「漢数字変換後の住所録」です。
      • Wordの「はがき宛名印刷ウィザード」で使う住所録になります。
    3. 住所録サンプル (Microsoft Excel ワークシート)
      • 住所録マクロ練習用の住所録です。
    4. Wordで宛名印刷 (Microsoft Word 文書)
      • ワードの「はがき宛名印刷ウィザード」で作成した文書です。
      • このままでは使えません。[別のリストの選択...]を行う必要があります。

住所録マクロの使い方

§住所録マクロを開く
  1. 「住所録マクロ」を開きます。
  2. 次の警告が出たら‥‥

    セキュリティが高くてマクロが使えない」と言っています。
    1. [OK]をクリックします。
    2. パソコン管理者に「セキュリティレベル」を“中”にする了解を得ます。
    3. [ツール]メニュー ⇒[マクロ]⇒[セキュリティ]をクリックします。
    4. [セキュリティレベル]タブを選択し、
    5. “中(M) コンピュータに損害を与える可能性があるマクロを実行する前に警告します。”を選択します。
    6. [OK]クリックします。
    7. Excel を終了させ、
    8. 再度、「住所録マクロ」を開きます。

  3. 次の警告が出たら‥‥

    [マクロを有効にする]をクリックします。“住所録マクロ”はマクロの塊だからです。
     この警告は、住所録マクロを開く度に出ます。
  • 注意
     マクロを作った覚えのない Excel ファイルを開いた時、この警告が出た場合は、
    1. とりあえず、[マクロを無効にする]ボタンをクリックします。
    2. 作成者(または入手元)に「マクロが入っているか?」確認し、指示を仰ぎます。
    3. 警告にもあるように、不用意に[マクロを有効にする]をクリックすると、ウィルスに[感染する可能性があります。
    4. 自分のパソコンがウィルスに感染していたとします。このマクロをコピーして他人に渡すと、その人がウィルスに感染する可能性があります。この場合の責任は、渡した人にもあります。

§Excel 住所録を指定する

次のダイアログボックスが出ますので‥‥

  1. [参照]をクリックし、
  2. 「ファイルの場所」を住所録があるフォルダにします。
  3. 住所録を選択し、
  4. [開く]をクリックします。
  5. Excel 住所録のフルパスが表示されますので、[住所録を開く]をクリックします。
    • 住所録マクロを開くと「前回」の住所録のフルパスが表示されます。今回も前回の住所録と同じファイルの場合は、[参照]せず[住所録を開く]で問題ありません。
注意
  • 対象となる住所録は、保存する時「アクティブ」だったワークシートです。
     例えば、「個人用」と「業務用」の住所録がある場合です。

    右図の状態で保存すると、業務用のはがき宛名印刷を行うことになります。

Word宛名書き住所漢数字変換

【Word宛名書き住所漢数字変換】ダイアログボックスで、次を入力します。

  1. [宛名書き漢数字変換]タブを選択します。
  2. 表示の項目に対応する住所録の列記号を入力します。
     リスト表示ボタン をクリックすると項目名が表示されますので、該当する項目名をクリックします。
    • 氏名
      • 宛名の列記号です。省略できません。
    • 欠礼
      • 欠礼年の列記号です。省略できません。
    • 連名
      • 連名の列記号です。省略できません。
    • 郵便番号
      • 郵便番号の列記号です。省略できません。
    • 住所
      • 住所の列記号です。省略できません。
    • 住所2
    • 住所2の列記号です。省略できません。
    • 桁_1
      • はがきに表示する住所の桁数が入る列記号です。省略できません。
    • 敬称
      • 敬称の列記号です。省略可能です。
      • 省略すると、Word の「はがき宛名印刷ウィザード」で指定した文字(例えば、“様”)になります。
    • 上詰
      • 住所2を上詰め/中央/下詰めするかを指示する列記号です。省略すると下詰めになります。
    • 部署
      • 部署の列記号です。省略可能です。
    • 役職
      • 役職の列記号です。省略可能です。
    • 開始行
      • データの開始行です。
      • 規定値は 2 です。変更可能です。
    • 終了行
      • データの終了行です。
      • 規定値は自動的にセットされます。変更可能です。
    • 文字数
      • はがきに印刷する1行目の住所の文字数です。
      • 規定値は15です。
      • Word の「はがき宛名印刷ウィザード」をカスタマイズした時に変更します。
    • 会社数
    • 「住所2」の文字数の文字数です。
      • 規定値は17です。
      • Word の「はがき宛名印刷ウィザード」をカスタマイズした時に変更します。
    • 欠礼年
      • 「欠礼」列の値がこの値以上のレコードは出力しません。(=印刷しない)
      • 変更する時は、スピンボタン を使って増減します。
    • 欠礼年以上は出力しない
      • 「欠礼年」以上のレコードも出力する場合は、チェックを外します。
        (チェックを外すと、住所録の全データを出力することになります。)
  3. [実行]をクリックします。
  4. エラーが出た場合
    • 未定義の項目があります。
      • 表示の項目の列記号を指定しなかった場合です。
      • 特に支障はありません。[はい]をクリックすると続行します。

    • 入力エラーです。
      • 表示の項目の列記号を入力する必要があります。
      • [OK]をクリックすると、元の画面に戻ります。

  1. 終了のメッセージが出ます。
    • エラーが無ければ、[いいえ]がアクティブになります。
    • [いいえ]をクリックします。

  2. Excelのブックが開いていない状態になりますので、[×]ボタンで閉じます。
    • これは「住所録マクロのバグ」です。Excel を終了する方法が私には解らないのです m(_@_)m
次の終了メッセージが出た場合
  • 住所_1 が15文字を超えた「住所」が * 件ありました。

    • このまま放置すると、はがきに印刷した時の住所が崩れます。
    • 次を行います。
    1. [はい]をクリックします。
    2. 住所録が表示されますので、
      • 「桁1」がハイライトされているレコードを探します。
      • 「住所」(または住所1)の(はがき上で)住所1と住所2の切れ目にスペースを入力します。
        • 切れ目をより右が17文字以内にします。
      • 上書き保存します。
    3. 再度、住所録マクロを起動します。

目次へ

確認している不具合

  1. 終了時のメッセージで[いいえ]にしても、Excel が残る。(当初から)
  2. (欠礼で)出力対象外のレコードもエラーチェックの対象になる。(H19.11.20)
  3. 氏名の6文字以内はチェックしていません。