教えて!gooにおける不適切な投稿への対応について

こんにちは。
Access(accdb)から拡張子xlsxのExcelファイルを出力しました。出力したファイルを開くと、ファイル形式またはファイル拡張子が正しくありません、というエラーが発生します。出力拡張子をxlsにaccess上で変更すると、ファイルを開けるのですが、xlsxだと開けません。

できればxlsxの状態で出力し開けるようにしたいのですが、何かよいアイデアはないでしょうか。

ちなみにaccessでは、以下の通りエクスポートのマクロを組んでいます。

変換の種類 エクスポート
ワークシートの種類 Excel binary workbook
テーブル名 ◯◯
ファイル名 ▲▲.xlsx
フィールド名の設定 いいえ

gooドクター

A 回答 (3件)

AccessとExcelのバージョンが書いてありませんが、Access2007以降とExcel2003以前のバージョンの組み合わせだとたぶんそうなります。


Office2003以前のMicrosottOfficeは「*.xlsx」や「*.docx」等のファイル形式に対応していません。これらはOffice2007以降で対応したファイル形式です。
最新バージョンのMicrosottOfficeに買い換えるか、「LibreOffice」や「OpenOffice.org」等のxlsx形式を扱えるフリーソフトのオフィススイートに乗り換えるかすることをおすすめします。
なお、Office2003の場合は「Word/Excel/PowerPoint用MicrosoftOffice互換機能パック」を使用できますが、Office2003自体がサポート終了しており、セキュリティ上の問題があるので使用はおすすめしません。
https://www.microsoft.com/ja-jp/download/details …
    • good
    • 0
この回答へのお礼

問題解決に大きく前進できました。感謝いたします。

お礼日時:2015/12/02 22:12

Office2007以降なら


>ワークシートの種類 Excel binary workbook
はバイナリ形式での出力ですから拡張子は、xlb でなければなりません。
xls に変更すると開けるのはExcelが気を利かしているのかなと。

VBAではなくマクロでのお話ですから…
ワークシートの種類 [Excel Workbook] ってのが右側の▼からプルダウンで選択できませんかね。
これでしたらxlsxで大丈夫です。
(当方の環境はOffice2010なので他のバージョンだとちょっと不明。)

※質問の際には
Windowsのバージョン
Office(Excel・Accessなど)のバージョンも明記するようにしましょう。
回答するうえで大きな要素になります。
では。
    • good
    • 0
この回答へのお礼

参考にさせて頂きました。ありがとうございました。

お礼日時:2015/12/02 22:12

バージョンなどの詳細がわからないので気になった点だけ・・・。



>ワークシートの種類 Excel binary workbook
これは、「Excel バイナリ ワークシート形式」です。
ここに指定できる値は、古いものは除いて以下のようになっていました。

acSpreadsheetTypeExcel8   8 Microsoft Excel 97 形式
acSpreadsheetTypeExcel9   8 Microsoft Excel 2000 形式
acSpreadsheetTypeExcel12   9 Microsoft Excel 2010 形式
acSpreadsheetTypeExcel12Xml 10 Microsoft Excel 2010 の XML の形式

この、9以下が「Excel binary workbook」形式なので、
「xlsx」形式で出力するには、
ワークシートの種類は、acSpreadsheetTypeExcel12Xml(10)にする必要があると思います。
    • good
    • 1
この回答へのお礼

ありがとうございました。助かりました。

お礼日時:2015/12/02 22:12

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

gooドクター

このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング