人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

エクセルの2002でプログラムを開発中です。ローカルフォルダで動いているエクセルの、あるシートをサーバーの任意フォルダにファイルとして保存するものです。
ところが今日、職場で2002で保存したファイルを2007で開こうとすると【ファイル拡張子が示す形式と異なります】のエラー。逆に2007で保存したファイルを2002で開こうとすると【このファイルの形式を認識できません。】のメッセージエラー。職場で複数の同僚との活用を考えており、同僚が使うエクセルはそれぞれバージョンが違います。

なお、ネットでググるとファイルフォーマットを指定する必要があると書いてあり、workbook.SaveAs("abc.xls", Excel.XlFileFormat.xlWorkbookNormal)となっています。そこで★マークの部分を書き足しました。これで動くでしょうか?つまり、どのバージョンで保存しても、別のバージョンで開けるようになるのかどうか。

(すみません、ググったのは家に帰ってきてからです。明日、職場で確かめてこようと思いますが今からは行けません。月曜日に使いたいのです。パージョンの違いがあっても使えるかどうかの評価がほしいのです。)

●質問者: anglar
●カテゴリ:コンピュータ
✍キーワード:ABC Excel xls かめ すみません
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● Mook
●35ポイント

xlWorkbookNormal は使用しているバージョンのフォーマットで保存されますので、

2007 でこれで保存した場合は、下位バージョンで開くことができません。

下位バージョンのフォーマットで保存するのが基本です。


ですから、保存時のフォーマットは xlExcel9795 を指定した方が良いでしょう。

http://www.officepro.jp/excelvba/book_new/index9.html


ただ、2007 以降とそれ以前では機能に大きく差がありますので、変更内容によって完全な再現は

できませんのでそのあたりは把握しておいた方が良いかと思います。

http://www.geocities.jp/oyakamassan_m/exceltips/excel2007_1.html

◎質問者からの返答

ありがとうございます。わかりやすいページを紹介してくれて感謝です。ただ、保存したいページはxlExcel9795では2002でさえ、うまくいかないように感じています。職場では同僚が2007を使って、サーバーに集まった複数のファイルを私が2002で処理したいのです。何とかならないかと思っています。なお、私は以前「http://q.hatena.ne.jp/1206170553」でMookさんに答えてもらっていて、このコードの下から3つめの部分をいじっているところです。重ね重ねお世話になっているわけです。m(_ _)m


2 ● Mook
●35ポイント

捕捉等はコメントで行いたいので、下の「この質問・回答へのコメント」を有効にお願いいたします。


ちょっと検証してみました。

2003 では xlExcel9795 の使用でだいたい問題なかったのですが、2010 では この書式は

使えませんでした。おそらく 2007 でも使えないかもしれません。


代わりに、2010で xlExcel8 と xlWorkbookNormal で保存し 2000 で開いてみましたが、

どちらも開くことができました。


ですので先の回答は誤っており(すみませんでした)、試そうとされていた xlWorkbookNormal

で保存することで、できそうです。


前回のコードでしたら

dstWB.SaveAs folderPath & "\" & fileName, FileFormat:=xlWorkbookNormal

で行けるかと思います。

◎質問者からの返答

返信が遅れて大変申し訳ありません。ずっとこの問題を職場で引きづりながら、いろいろ試してみましたが、これで何とか行くような気がしてきました。明日も職場に行ってやってみます。また、返信します。

(^o^)

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ