こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Q>Excelファイルをテキスト形式で任意の拡張子で保存したい

Excelのファイルを○○.txtにしないで任意の拡張子にしてtxt形式で保存したいと思っています。

(1)あとで名前を変えれば済む話なのですが、VBAで自動化を考えているのでSaveAsでできないでしょうか?
(2)もしだめなら、その後moveコマンドのバッチファイルを作って起動して名前を変えようかと思いますが、ExcelVBAからバッチファイルを呼び出す方法がわかりません。

(1)(2)のどちらかが解りましたら教えてください。
ちなみにExcel2000を使っています。
よろしくお願いします。m(_ _)m

投稿日時 - 2004-03-01 16:53:54

QNo.793956

すぐに回答ほしいです

質問者が選んだベストアンサー

名前を付けて保存の際に、
"test.abc"(テキスト、タブ区切り)
のようにダブルクォートで囲って保存するとOKです。

--
> VBAで自動化を考えているので

上の操作を記録すると、

ActiveWorkbook.SaveAs Filename:= "C:\~\test.abc", FileFormat:=xlText, CreateBackup:=False

のように記録されました。
この書き方ならば、まさか勝手に.txtなんて付けないハズですが。

投稿日時 - 2004-03-01 17:00:40

お礼

うまくいきました。意外と簡単にできるんですね。ありがとうございました。

投稿日時 - 2004-03-01 17:22:59

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

こんにちは。maruru01です。

SaveAsメソッドの引数FileFormatに、「xlCurrentPlatformText」(=-4158)を指定して下さい。
No.1の方の回答にある、「xlText」は定数の意味としては正しくありません。
(でも、値は同じ「-4158」なので問題ないですが。)
マクロの記録はこういうおかしなコードをよく記述します。
ちなみに、この方法で保存すれば、名前が「AAA.xls」のようにExcelの拡張子でもテキストエディタで開けます。
(通常のxlsファイルは正しく表示されません。)

投稿日時 - 2004-03-01 17:10:54

あなたにオススメの質問