• ベストアンサー

VBA エクセル2003だと出るエラー

jam-bestの回答

  • jam-best
  • ベストアンサー率27% (94/344)
回答No.3

直接的な解決にはならないと思いますが、 Sheets("TXT").SaveAs ~ Filename:=ThisWorkbook.Path & "\今月.txt" ↑保存するものはSheetではなくWorkBookなりじゃないでしょうか?

naoko5138
質問者

お礼

ありがとうございます。 2000ではなぜかSheetでも流れから無事に保存できていたのですが、 これはWorkBookにするべきだとわかりました。 ありがとうございます。

関連するQ&A

  • VBAで名前を付けて保存

    テキストファイルをエクセル出力する処理を考えております。 テキストファイルを開き、名前をつけて保存する処理が上手くできません。 シート1のある2つのセルに入力パスと出力パスが設定されているとします。 例えばcells(4,4)に入力パスが設定されており(¥~~~.txt) cells(6,4)に出力パスが設定されており(¥~~~xls) 上記のような状態とします。 cells(4,4)にあるテキストファイルを開き、 それを拡張子をエクセルにしてcells(6.4)にある出力先に名前をつけて保存をしたいのです。 オープンする場合は Workbooks.OpenText Filename:=Workbooks("○○.xlsm").Sheets(1).Cells(4, 4).Value & ".TXT" で上手くいきました。 しかし保存の際に ActiveWorkbook.SaveAs Filename:=Sheets(1).Cells(6, 4).Value & ".xls" で実行するとエラーがでてしまいます。 どうすれば良いでしょうか。

  • ExcelVBAでテキスト保存

    ExcelVBAを使って、ワークシートをテキストファイルに保存しようとしています。 CSV形式で保存するときは、   Sheets("test").Activate   ActiveSheet.SaveAs Filename:=ActiveSheet.Name & ".csv", _     FileFormat:=xlCSV, CreateBackup:=False でtest.csvに保存できますが、 単純にテキストファイルとして保存したいときに   Sheets("test").Activate   ActiveSheet.SaveAs Filename:=ActiveSheet.Name & ".txt", _     FileFormat:=xlText, CreateBackup:=False としても、実行時に下記のエラーになってしまいます。   実行時エラー '1004'   アプリケーション定義またはオブジェクト定義のエラーです。 どうしたらよいのでしょうか? また、CSVで保存した時も開いているファイルがtest.csvに変わってしまいますが、できれば、開いているファイルは元のファイルのままでシートだけを保存するにはSaveAsメソッドではなく、他のメソッドを使うのでしょうか? (hogehoge.xlsのtestシートを保存してもhogehoge.xlsが開いたままにしたい) 以上、宜しくお願いします。

  • エクセルのマクロ

    あるエクセルのブック内のシートを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です。 何か足りないコードがあるのでしょうか? よろしくお願いします。

  • Excel2007 実行時エラー1004

    宜しくお願い致します。 Excel2003環境時に作成したマクロを2007環境で動作させると実行時エラー1004が返ってきます。 対策をお教えいただきたくお願いします。 (1)Excelで表作成 (2)作成した表を所定パスにText形式で保存するマクロを実行  【Excel2003でのソース】 ActiveWorkbook.SaveAs filename:=(ファイルパス) & ".txt" _ , FileFormat:=xlText (3)FileFormatの箇所で実行時エラー1004(SaveAsメソッドは失敗) Excel2007で上記部分に下位互換市内部分が含まれているのだとおもいますが、対策が全く分かりません。 お知恵をお借りしたくお願いします。

  • VBA 新規ファイルを元ファイルと同じ場所に保存する方法

    こんにちは。VBA初心者です。 エクセルファイルのシートを、いろいろ行を増やしたり計算を自動にするようにして、 最後にテキスト形式にするためのマクロをつくっております。 元のエクセルファイルの対象のシートをコピーして、新しいファイルを作成しペースト→保存→ファイルを閉じるところまでなんとかできました。 現在、下記のコードで新しいファイルは「マイドキュメント」に保存されていますが、元のエクセルファイルと同じ場所に保存したいのですが、どのようにコードを書けばよろしいでしょうか。 教えていただけますと幸いです。宜しくお願い申し上げます。 Sheets("TXT").Copy Sheets("TXT").SaveAs FileFormat:=xlCurrentPlatformText, Filename:="今月.txt" With Workbooks("今月.txt") .Saved = True .Close

  • Excel : OpenTextメソッドが正常に動作しないのはなぜ?

    下記のようなマクロを作りました。 Sub sample() FileName = ThisWorkbook.Path & "\test.txt" Workbooks.OpenText FileName:=FileName, Comma:=True ActiveWorkbook.SaveAs FileName:=FileName, FileFormat:=xlCSV ActiveWorkbook.Close End Sub test.txt には次のテキストが書かれています。 "あ"," あ " 上記のマクロを実行すると、テキストの中身は次のようになってしまいます。 """あ"",""",あ,"""" 本来であれば、テキストの内容には変化が全くないはずだと思います。 原因が不明なのですが、マクロの動作確認をしたところ、 OpenTextメソッドでテキストを開いたときにすでに、 カンマの位置で区切られてセル内に入っていませんでした。 どのようにすればOpenTextメソッドは希望する動作をしてくれるのでしょうか?

  • EXCELのVBAのコマンドボタンの動作について

    EXCELのVBAでコマンドボタンを押したとき、あるテキストを、単にテキストとして開く為に、以下のコーディングをしました。 しかし、「shell」コマンドは実行形式でないといけないようで、うまく行きません。どなたか、判る方いらっしゃいますか? --------------------------------------------- wk_path = ThisWorkbook.Path & "\memo1.txt" wk_rc = Shell(wk_path, vbNormalFocus) --------------------------------------------- (エラーコード:メッセージ) 5:プロシジャーの呼び出し、または引数が不正です。

  • エクセルVBA 実行時エラーって出るんですけど・・・;;

    いつもお世話になってます またまた質問載せさせていただきます。 マクロで2つのファイルをSaveasで各保存をした後に、 エクセルを閉じると、 実行時エラー'1004' WorksheetクラスのSelectメソッドが失敗しました と出るのです。 デバックボタンもグレーのままなので、デバックは使えないし、そのまま終了をかけると、エクセル自体が閉じられるので、 さっぱり何がなにやらって感じなのです。 どなたか分かる方いらっしゃいますでしょうか??

  • VBAのFileFormatで悩んでいることがあるので助けていただけないでしょうか?

    エクセルファイルを通常のテキスト形式にしたいのですがタブ区切りが入ってしまうので困っています。 そこで変換時なのですがFileFormatをつかっています。 そのときxlCSVはうまくいくのですがxlTextWindowsがうまくいきません。 xlCSVから変えただけなのですが・・・ 実行時エラー '1004': 'SaveAs' メソッドは失敗しました: '_Workbook' オブジェクト となってしまいます。 何がいけないのか見当がつきません。 通常のXLSからの変換です。 テキストファイルにしたとき,""カンマやダブルコーテーションが勝手に入り困っています。 何も入らないようにしたいです。

  • VBA 新規作成したファイルを開くときにエラー

    すみません、助けてください。 Excel 2007のVBAでActiveWorkbook.SaveAsを使って 新規にExcelファイルを生成するものを作成しているのですが、 新たに作成したExcelファイルを開くときにエラー(警告)が出てしまいます。 (ファイル自体は開けるのですが。。。) ソースは以下です。 ------------------------------------------------------------ ' シート枚数を指定 Application.SheetsInNewWorkbook = 3 Workbooks.Add ' 上書き保存 Application.DisplayAlerts = False ' ファイル名を指定して保存 ActiveWorkbook.SaveAs (ThisWorkbook.Path + "\" + "新しいファイル.xls")