ExcelやWordのファイルが指定されたリンクをクリックしても、ファイルがダウンロードされることなく、新しいタブやウィンドウに“文字化け”の表示が出てしまう場合の対処法についてです。

当ブログでもいくつかの記事において、自作のExcelファイルをダウンロードできるようにリンクを貼っています。

ところが先日、ある読者の方から「エクセルファイルがダウンロードできない」とのご指摘をいただきました。実際に試してみると…

文字化け

こんなんでましたけど…というか、いままでずっとこんな状態だったのに気づかないってどういうこと?あらためて、ご報告いただいたT様、本当にありがとうございます。

というわけで、気を取り直して調査した結果、おおよその原因とひとまずの対処法を施しましたのでご報告します。

なお、今回の現象が確認できた動作環境は次の通りです。

動作環境

OS:Windows10、Windows8.1
ブラウザ:IE11、chrome

ちなみに、事務リーダーは「Windows10&Firefox55.0.3」で動作確認していたため、同様の現象には気づいていませんでした。Firefoxでは、問題なくダウンロードできるようです。

Excelファイル等がダウンロードできない場合の対処法

ひとまず、この現象の原因はさておき…リンクをクリックしても文字化け画面が出現するだけで、肝心のファイルがダウンロードできない場合、次のように対処してみてください。

・ファイルの保存方法

ダウンロードしたいファイルへのリンクを[右クリック]⇒[対象をファイルに保存(A)]を選択

対象をファイルに保存

デスクトップなど適当な場所にファイルを[保存]⇒[ファイルを開く(O)]

ファイルを開く

これで、文字化けすることなくファイルがダウンロードできるはずです。

ダウンロード完了

参考画像は、当ブログの記事『エクセルで紙の帳簿に印刷!便利なマクロボタン付き【アピカリーフ対応】』からのものです。

ファイルをダウンロードする側としての問題については、ひとまずこれで妥協することにしました。

特定のExcelファイル等がダウンロードできず文字化けする原因

問題は、Excelファイルなどをアップロードする側、つまり「サイトの運営側はどのように対応すべきか?」ということなのですが…

あらためて、今回の現象についての概要です。

問題の現象

「.xlsx」や「.xlsm」「.docx」などの拡張子をもつエクセルやワードのファイルで、リンクをクリックしてもダウンロードできず、文字化け画面が表示されてしまう

なお、PDFファイルなど他の形式のファイルについては、現状でも問題なくクリックのみでダウンロードできています。ファイル名が日本語のものについても、特に問題は出ていません。

・・・・・

それで結論から言うと、今回の問題は“サーバー側の設定が原因”でした。

◇参考にさせていただいたサイト◇
『リンク先にdocxやxlsxを指定した時にクリックしてもファイルがダウンロードされない場合の対処法』(TechMemo by himecas様)
『Office2007以降のファイルをIEでダウンロードするとZIPファイルになる不具合』(とあるSEの備忘録様)

要するにクライアント(サイトを見る側)の設定ではなく、サーバー(サイト側)の設定をいじらない限り「.xlsx」や「.docx」ファイルについてはExcelやWordのファイルとして正しく認識されず、結果として、リンクをクリックしてもダウンロードされないということのようです。

「.xlsx」等のファイルをアップロードする前に必要な設定

先述のサイト(TechMemo)では、その解決手段にも言及されています。

docxやxlsxのファイルがリンク先に指定されている場合に、リンクをクリックしてもファイルがダウンロードされない時は、.htaccessに以下を追記します。
(中略)
上記を追加することで、「docx」「xlsx」「pptx」のMIMEタイプを正しく認識できるようになります。MIMEタイプを正常に認識できることで、ブラウザで開こうとせずちゃんとダウンロードしてくれるようになります。

なんというありがたい情報。さっそく当ブログでも設定変更を、と思ったのですが…

「ライブドアブログでは.htaccessファイルを触ることができない」という根本的な事実にぶち当たり、あえなく断念することに。

『ライブドアブログのヘルプ(PC向け)ファイル管理機能について』には、こう明記されています。

※.htaccess ファイルはご利用いただけません。

ちーん。というわけで、今回の話はここで終了。

仕方がないので、対象ページに「右クリックから保存してください」的な注釈をつけておくことで、一応の解決策とすることにして退散。なにか対策があったら教えてください。

ただ、この件はライブドアブログなどの無料ブログだけでなく、Wordpressで運営しているブログにも当てはまる問題らしい。ってことで、きっといつかは役に立つだろう。ちーん。

「サラリーマン」カテゴリ参加中!

↑この記事いいね!と思ったらクリックお願いします。