まりふのひと

OutlookExpressのフォルダ付きアドレス帳をThunderbirdに移すで苦戦

Windows7 にインストールした Thunderbird 10 に WindowsXP の OutlookExpress の(フォルダで分けてある)アドレス帳をインポートしようと、

  1. [ツール]メニュー ⇒[設定とデータのインポート]で、
  2. 「アドレス帳」を選択,
  3. Outlook Express を選択して[次へ]と進むと‥‥


「それはないでしょう‥‥」「一体、何処からインポートしたの?」
アドレス帳を開いて見ても‥‥ 「Outlook Express のアドレス帳」は出来ているが、中身は‥‥ 当然のことながら無い。

ググってみたら、二つの方法があるようだ。

  1. Outlook Express がインストールされていない場合 は、CSV形式等でインストールするしかないようだ。
  2. jOutlook Express がインストールされているパソコンに Thunderbird をインストールする。
    kThunderbird から、Outlook Express のアドレス帳をインポートし、
    lThunderbird のアドレス帳を、他のパソコンに移す。


上記方法に挑戦した。

CSV形式で移す

WindowsXP の OutlookExpress のアドレス帳を CSV形式でエクスポートする。
この方法の欠点として、jアドレス帳のフォルダは無視されるkThunderbird でのインポートが面倒である」ことである。利点は、lアドレス帳を目で見える形で残せるExcelで見ることができる)ことであろう。



§1.OutlookExpress のアドレス帳を CSV形式で出力する
  1. [スタート]ボタンをクリックし、
  2. [すべてのプログラム]⇒[アクセサリ]とポイントし、
  3. [アドレス帳]をクリックする。
  4. 【アドレス帳−メインユーザー】ウィンドウが開くので、
    1. [ファイル]メニューをクリックし、
    2. [全てのコンテンツを表示]をクリックする。
  5. 【アドレス帳】ウィンドウが開く(二つ目)ので、
    1. [ファイル]メニューをクリックし、
    2. [エクスポート]⇒[ほかのアドレス帳]をクリックする。
  6. [テキスト ファイル(CSV)]を選択し、[エクスポート]をクリックする。
  7. CSVのエクスポート】ダイアログボックスで、
    1. [参照]をクリックし、
    2. 「保存する場所」を指定し、
      • 何時もバックアップしているフォルダが望ましい。
    3. ファイル名を入力し、
      • 例えば、“アドレス帳20120304” 等と、作成した日付を付けるのがベター。
    4. [保存]する。
  8. CSVのエクスポート】ダイアログボックスに戻ったら、[次へ]をクリックする。
  9. 「エクスポートするフィールドを選択してください」では、すべてのフィールドにチェックを入れ(任意。バックアップを兼ねているので...)、[完了]する。
§2.ThunderbirdCSV形式のアドレス帳をインポートする
  1. Thunderbird を起動し、
  2. [アドレス帳]を開く。
  3. [ツール]メニューをクリックし、
  4. [インポート]をクリックする。
  5. 「アドレス帳」のみ選択し[次へ]
  6. [テキストファイル(LDIF,tab,csv,txt)]選択し[次へ]
  7. 【アドレス帳ファイルを選択】ダイアログボックスで、
    1. 「ファイルの種類」を[カンマ区切り]とし、
    2. 「ファイルの場所」を OutlookExpress で作成した CSVファイルのあるフォルダを指定する。
    3. CSVファイルを指定し、
    4. [開く]
  8. 【アドレス帳のインポート】ダイアログボックスで、下記要領でフィールドの対応を行った後、[OK]をクリックする。
    • 「最初のレコードにはフィールド名を含む」にチェックを入れる。
    • インポート不要なフィールドは、チェックを外す。
       アドレス帳のフィールド(Thunderbird側)とインポートするデータ(CSVファイル)のフィールドの対応は、
      1. アドレス帳のフィールドを右クリックで選択し、(クリックするとチェックが外れる)
      2. [上へ]または[下へ]をクリックする。
  9. [完了]する。
  10. 【アドレス帳】に戻ったら、CSVファイルの名前のアドレス帳が出来ている。
    • 戻った直後、何も表示されていなかったら、一度、別のアドレス帳を選択し、再度、出来たアドレス帳を選択する表示される。



§3.戦い終わって...
  1. この方法では OutlookExpressのアドレス帳のフォルダは無視される。
  2. Thunderbirdでインポートすると、ファイル名がアドレス帳の名前(OutlookExpressのフォルダ名に相当)になる。
  3. OutlookExpress の【アドレス帳−メインユーザー】ウィンドウからエクスポートすると、「メインユーザーの連絡先」しか出力されない。
     ということは、エクスポートするアドレス「メインユーザーの連絡先」にコピーしてエクスポート、ファイル名をフォルダ名にすればよいことになる...
  4. エクスポートするフィールドは少ない方が、Thunderbirdでの「フィールドの対応」が楽になる。しかし、フィールドを限定すると、「バックアップ」の要素が無くなる。そこで、列を削除する簡単なマクロを作ってみた。(コードは後述
  5. csvファイルを Thunderbirdのフィールド順に並べると、フィールドの対応が楽になる。そこで、Thunderbirdのフィールドを調べた。(斜体 は、規定値でチェックが入っていないフィールド)
    1. 表示名
    2. ニックネーム
    3. メールアドレス
    4. 番地 (自宅)
    5. 市区町村 (自宅)
    6. 郵便番号 (自宅)
    7. 都道府県 (自宅)
    8. 自宅の電話番号
    9. FAX 番号
    10. 携帯電話番号
    11. Web ページ 1
    12. 番地 (勤務先)
    13. 市区町村 (勤務先)
    14. 郵便番号 (勤務先)
    15. 都道府県 (勤務先)
    16. 国 (勤務先)
    17. Web ページ 2
    18. 勤務先の電話番号
    19. 別のメールアドレス
    20. スクリーンネーム
    21. 組織
    22. 役職
    23. 部門
    24. ポケットベル番号
    25. メモ
    26. 番地 (自宅) 2
    27. 国 (自宅)
    28. 番地 (勤務先) 2
    29. 誕生年
    30. 誕生月
    31. 誕生日
    32. 追加情報 1
    33. 追加情報 2
    34. 追加情報 3
    35. 追加情報 4


§列にデータが無ければ列を削除するマクロ(VBA
Option Explicit

Sub 選択した列にデータが無ければ列を削除する()
Dim lngRow As Long

    If ActiveCell.Row <> 1 Then
        MsgBox "1行目のセルを選択してください。", vbInformation
        Exit Sub
    End If
    
    Selection.End(xlDown).Select    'Ctrl+↓
    lngRow = ActiveCell.Row         'アクティブセルの行番号
    Selection.End(xlUp).Select      'Ctrl+↑
    
    If lngRow = 65536 Then
        If MsgBox("削除します!", vbOKCancel + vbExclamation) = vbCancel Then Exit Sub
        Selection.EntireColumn.Delete
    Else
        MsgBox "データが " & lngRow & " 行目に有ります。", vbInformation
    End If
    
End Sub
§アドレス帳があるフォルダ

WindowsXPThunderbird に OutlookExpress のアドレス帳のインポートする方法

WindowsXPに初めて Thunderbirdをインストールした時、ウィザードに従ってアドレス帳を取り込んだら、OutlookExpressのアドレス帳のフォルダが取り込めた‥‥」という確証のない記憶がある...
そこで、この方法の方が csv形式で移行する簡単はず‥‥ と試行したが、結果として「OutlookExpress のアドレス帳のフォルダ」は取り込めなかった。 csv形式と同じように面倒なことをすれば出来るが...
戦意喪失、手順の記述は止め、ポイントのみに留める。

  1. WindowsXPThunderbirdからアドレスを削除しようとしたが、
    「個人用アドレス帳」「記録用アドレス帳」は削除出来なかった。
  2. Thunderbirdから OutlookExpressのアドレス帳をインポートすると、
    • 瞬時に終え、「OutlookExpressのアドレス帳」が出来る。
    • このアドレス帳の中に、(フォルダが無視され)全アドレスが入る。
  3. WindowsXPThunderbirdのアドレス帳を Windows7 に移すには、
    • アドレス帳を選択して、
    • LDIF形式でエクスポートするのがベスト。(たぶん)
  4. Windows7Thunderbird で LDIF形式でインポートするのが簡単。
     上記でアドレス帳毎にエクスポートしてあるので、WindowsXP と同じ状態にできた。
  5. LDIF とは‥‥ (よく解んない)
    LDIFエル・ディフ LDAP data interchange format

     LDAP(lightweight directory access protocol)のディレクトリ情報を交換/変更する際に用いるファイル・フォーマット。LDAPに対応したディレクトリ・サーバー同士の通信などに利用する。
    LDAPエル・ダップ lightweight directory access protoco

     ISO標準であるX.500を簡略化したディレクトリ・アクセスのためのプロトコル。IP上での利用に限定した仕様で,RFC2251で規定するバージョン3が最新版である。ネットワークを利用するユーザーのメール・アドレスやユーザーの情報を検索するために用いる。
     LDAPサーバーには,米サン・マイクロシステムズの「Sun Java System Directory Server」などの専用サーバー製品のほか,米IBMの「ノーツ」などメール・ユーザー用のアドレス帳をLDAPに対応させた製品も増えている。クライアントでは,Outlook ExpressEudoraなどが対応している。