まりふのひと

住所録マクロ/住所録の「住所1」にスペースを挿入したのですが「桁1」エラーが消えません

今日のパソコン同好会で、Excel住所録マクロを動かした方から、「『桁1』エラーが消えない」との質問が出され、即答できなかったので帰宅後 調べた。


 推定原因

  1. 住所録中の「住所1」の文字数が 21桁だったので、「桁1」エラーになった。
  2. この時、「住所1」に改行の場所を示すスペースを入力せず保存してしまった。
     または、スペースを入力したものの、再度、住所録マクロを動かさなかった。
  3. その後、住所録を開いて、該当レコードに「欠礼」を入力した。
  4. 「欠礼」レコードは出力しないため、一切のチェックを行っていない
     このため、「桁1」エラー(21桁)の状態がそのまま残った。
  5. 「エラーが1件ある」と表示されたため、最初に見えた欠礼レコードの[住所1]中にスペースを入力した。
    • 実際には、スクロールしないと見えない場所に本来のエラーレコードがあったと推定される。
  6. 「Wordで宛名印刷専用用住所録」には、この欠礼レコードは出力されていなかった。(正常)


 対策

  • 「欠礼」レコードは出力しないため、これまでどおりチェックは行わないが、「チェックを行っていない」ことを示すため「桁1」をクリアーする。(前回のエラーを消去するため)
  1. 改修した「住所録マクロ」はバージョン 2.2a とした。
     最新バージョンは、「 住所録マクロの使い方(ver.2.2a)」よりダウンロードできます。

編集後記

  • Excel2003 で開発した「住所録マクロ.xls」を Excel2010 で修正・テストしていた(WindowsXP マシンはデオデオ医院に入院中のため)ら、「開こうとしているファイル“****.xls”は、実際にはその拡張子が示すファイル形式ではありません」という不可解な警告が出た。

  • アーキテクト360 には次のように載っている。
     原因は、Excel 2007では拡張子をxlsとしてファイルを保存しても、従来の形式で保存してくれないためである。したがって、Excel2000や2003では、理解できないファイルとして認識されメッセージが表示されてしまう
     回避方法は、コメントにある部分のようにファイルフォーマットを指定する必要がある。
    workbook.SaveAs("abc.xls", Excel.XlFileFormat.xlWorkbookNormal)


さぁ〜て、困ったなぁ〜〜〜 WindowsXP マシンは入院中だし、Word2010 対応版を出す気力もないし...