あるエクセルのブック内のシートをdドライブに自動的にunicodeのタブ区切りテキストで保存するマクロを作成しています。コードは

for i = 1 to 10

Sheets(i).Select
f_name = "d:\" + Trim(Str(i)) + ".txt"
ActiveWorkbook.SaveAs Filename:=f_name,_
FileFormat:=xlUnicodeText, CreateBackup:=False

next i

こんな感じです。

しかしこれを実行するとイルカが

'aaa.txt'にアクセスできません。ファイルは読み取り専用であるか、または読み取り専用の場所にアクセスしようとしています。または、サーバー上に保存されているドキュメントから応答がありません。

と言うメッセージを出し、そこでキャンセルボタンを押すと

実行時エラー'1004':
'SaveAs'メソッドは失敗しました。'_Workbook'オブジェクト

というメッセージが出ます。さらにデバックを押すと、プログラムコードの
ActiveWorkbook.......の行で止まります。

環境はwindows2000、excel2000です。

何か足りないコードがあるのでしょうか?
よろしくお願いします。

A 回答 (2件)

どもども田吾作7です。



[マクロでファイルオープン]で質問されてますね。そちらが解決したらこちらの問題も解決するはずです。
ファイルは上書き保存だったんですね。読み取り専用属性を持つファイルのためにこのメッセージが出てると思われます。

でわでわ
    • good
    • 0

どもども田吾作7です。



Dドライブを指定してるけど、存在してますか?
WIN2000のセキュリティでアクセス権がないとか?

でわでわ

この回答への補足

dドライブは存在しています。
ファイル、フォルダにアクセス権はあります。(たぶん)
ちょっと色々いじってみたのですが、マクロを実行するファイル属性の読み取り専用にチェックを打つとそのようなエラーが出てこなくなりました。
なんででしょう!?よくわかりません。

補足日時:2001/07/13 16:01
    • good
    • 0

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

このQ&Aを見た人が検索しているワード


このカテゴリの人気Q&Aランキング

おすすめ情報

カテゴリ