Excelのファイル形式(拡張子)
xlsx
ですが、これはExcelの2007以降のバージョンのデフォルトとなっているOffice Open XML形式
というXMLをベースにしたファイル形式になります。
従来(2003まで)の場合のバイナリ形式とは異なり
・ Officeがインストールされていない環境でも見ることができる可能性あり
・ファイルサイズが小さくなる
などのメリットがあります。
で、面白いのが、このxlsx形式のファイルの拡張子を「zip」に変えて解凍すると
下のように複数のXMLファイルが解凍されます。
ファイルサイズが小さくなるのは、標準でzipに圧縮してるからだし
中身はxmlファイルなので、Officeがインストールされてなくても見たりできるのは納得です。
ただ、このファイル形式
アプリケーションやサービスによっては、
このxlsxファイルを
1つのファイルとして認識するか
複数のxmlファイルとして認識するか
が違うようです。
Windows上では、ひとつのxlsxファイルは、ひとつのファイルとして認識しますが
(ものすごい当たり前のこと書いてますが・・・)
某、メールホスティングサービスのウィルスチェックサービスは
このファイルをxlsxファイルではなく、複数のxmlファイルとして認識します。
(ちゃんと中身までチェックするという意味では正しい動作ですね)
ただ、このウィルスチェックサービスは一度にスキャンできるファイル数に上限があるため
複雑なxlsxファイル(xmlファイルが多くなるようなファイル)は、ウィルスチェックができず、メールを破棄してしまうことがあるようです。
(これは実際にお客様でメールが受け取れない というトラブルの時の原因でした)
ちなみに、Excelファイルにパスワードを付けると、zipにしても解凍されませんし
解凍できないため、上記ホスティングであっても上限に達することなくメールを送ることはできるようです。(ウィルスチェックはしませんけどね)
今回のような原因でメールが送れない なんてことはかなりレアケースかもしれませんが
メールが届かない/送れない みたいなときのヒントになればよいかなと思います。