dポイントプレゼントキャンペーン実施中!

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

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

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

A 回答 (2件)

名前を付けて保存の際に、


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

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

上の操作を記録すると、

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

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

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

お礼日時:2004/03/01 17:22

こんにちは。

maruru01です。

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

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