• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBAを使用して自動的に保存する事について)

VBAを使用してエクセルファイルを自動的に上書き保存する方法

singlecatの回答

  • singlecat
  • ベストアンサー率33% (139/418)
回答No.3

#1です おそらく前回のVBAの続きだと思われるので、前回のものに付け足してみました。 ※行頭の字下げ部分は全角空白にしています。 これで、メインのVBAの入っているWorkBookは開きっぱなしで、 作業(Target)のWorkBookは必要毎に開き、終了後に閉じる事になります。 dim i1 As integer dim i2 As integer dim TargetWorkBook As Workbook dim Path As String dim TargetFileName As String Path = "<実行パスを入れます>" Application.DisplayAlerts = False for i1=1 to 6  TargetFileNameTargetFileName = Path & Range("A" & i).Value & ".xls"  Workbooks.Open(TargetFileName)  for i2=1 to 3   '実行させたいサブルーチン(マクロ)を呼ぶ  next  TargetWorkBook.SaveAs Filename:=TargetFileNameTargetFileName _                 , FileFormat:=xlNormal _                 , Password:="" _                 , WriteResPassword:="" _                 , ReadOnlyRecommended:=False _                 , CreateBackup:=False  TargetWorkBook.Close next Application.DisplayAlerts = true

関連するQ&A

  • エクセルVBAでの自動ファイル保存

    エクセルVBAを使い入力したシート(ファイル)を、一定のデータが 入力された時点で指定した場所に例えば作成日をファイル名にして自動 的に保存していくようにしたいのですが、プログラムはどのようにすればいいのでしょうか? 実現させたいプログラムは、このような感じにしたいです。 1.VBAで指定シートにデータ入力→2.データ数10個で自動的に日付をファイル名にして自動的に保存→3.更に、データ10個追加された時点で前に作成されたファイルを自動で更新→4.データの入力完了で更に自動で更新 2~4のプログラムをご教授お願いします。

  • Excelマクロでpdfを自動作成したい

    複数のExcelシートからなるブックを、pdfとして出力しています。 現在はJustSystemのJustpdf2ドライバを使っているのですが、これだとマクロで完全自動化できないことが判明しました。 ・PDFのフアイル名と保存場所 ・上書きかどうか をいちいち聞いてきます。 Excelマクロで完全自動化するには、 ・ファイル名、保存場所をマクロで指定できる。もしくはExcelファイルと同じ場所に同じファイル名で作成する ・1シート目は上書き、2シート目からは現存のpdf (前シートのpdf)に続けて保存できるように、マクロで「上書き」か「続けて保存」かを指定できる ことが必要なのですが、JustSystemに問い合わせたところ、Justpdf2では無理とのことでした。 上記のように、複数シートからなるExcelブックを、マクロで完全自動でPDF化できるドライバ、方法がありましたら、お教えください。

  • エクセルVBAについて

    こんばんは。エクセルVBAについてアドバイスをお願いします。 エクセルのシートをNotesにオブジェクトとして貼り付けて使用しています。 エクセルファイルを開いたときに「シートA」を表示させましてその後そのシート上のデータを参照しながら別のシート上で作業したいと思っています。 しかしファイルを開くと 「'Sheets'メソッドは失敗しました'Globalオブジェクト'」というメッセージが表示されてしまいます。 エラーがでた場所は下記の※印の場所です。 =============================================== Dim WORK As Long Dim DATA As Object Set DATA = Worksheets("シートA").Range("A1") ※ WORK = DATA.Value =============================================== 情報が足りない場合は追記お願いします。 アドバイスお願い致します。

  • エクセルでVBAを使用して1分毎にファイルを保存するプログラムを書きた

    エクセルでVBAを使用して1分毎にファイルを保存するプログラムを書きたいのですが、 よくわかりません。 常に上書き保存をするようにしたいと思っています。 どなたか教えてくださいm(__)m

  • 自動で.xlsを閉じて指定フォルダに移動させたい

    開いているエクセルファイルが多数あるのですが、今アクティブになっているファイルだけを、上書き保存→閉じる→指定したフォルダに移動までを自動で行なわせたいです。 ・上書き保存はマクロの記憶でできるのですが、閉じるをしてしまうとマクロを終了できない、指定したフォルダに移動はマクロではできなく、教えて下さいませ。ファイルの移動は、名前を付けて保存ではなく、そのファイル自体を移動させたいです。 移動させたいファイルは決まってなくて、その都度変わります。 Sub Macro1() ActiveWorkbook.Save End Sub ・現時点、開いているファイルの保存場所 C:\Documents and Settings\aaa\デスクトップ\作業用 ・移動させたいフォルダ C:\Documents and Settings\aaa\デスクトップ\作業用\保存用

  • VBA=一定時間エクセルの入力操作がない場合、自動的にそのブックを閉じたい

    共通でエクセルを使用していますが、時々エクセルを開いたまま外出したり、休憩したり する方がおり、別な方がエクセルを開いて作業をしたいと思っても、どこかで開きぱなしのことが時々あります。 そんな時のために、エクセルに何も入力等がない一定時間経過したら、自動で保存して閉じる機能を持たせたいと考えています。例えば入力が5分以上なければ自動的に閉じるように・・・・ 上書き保存は下記のVBAで機能するのは確認済みですが、これに「5分後」等のタイムの設定をしたいのですが可能でしょうか? 可能の場合、どのようなVBAになりますか?? よろしくお願いします。 ⇒ 'ブックの上書き保存 ActiveWorkbook.Save ' 保存確認を避けるため、保存済みにする ThisWorkbook.Saved = True ' 他にブックが開いていなければ、Excelを終了する If Workbooks.Count <= 1 Then Application.Quit ' 本ブックをClose ThisWorkbook.Close False

  • Excel VBA 保存 上書き保存されてしまう

    エクセルデータを閉じる時に元データとは違う場所にバックアップをとるように以下のようなコードを記述しました。(Excel内の一部のデータが何かしらのタイミングで消えてしまう現象が起き、どのタイミングで消えているのかを探るために誰かしらがデータを開いて閉じる時にその閉じた時間をファイル名にして保存させるというのが目的です) Sub Auto_Close() Worksheets("Sheet1").Select 'シート1を開く ThisWorkbook.Save '元データの保存場所に上書き保存 Filename = Format(Now(), "yyyy-mm-dd-hh-mm-ss") ThisWorkbook.SaveAs Filename:="\\●●\●●\●●\●●\●●\" & Filename & ".xlsm" '別の場所に名前をつけて保存 End Sub この別の場所に保存したデータ((1)とします)を開いて中身を確認してから閉じるともちろん再度閉じた時間をファイル名にして保存する((2))ことになるのですが、このとき上書きされるような形になってしまい(1)のデータが残りません。(1)が残るようにするにはどこを修正すればいいのでしょうか?

  • Excel2007 VBA日付を付けて保存したい。

    Excelブックを毎朝8時になると指定のフォルダに年月日を付けて自動保存(上書きではなく新規で)したいのですが、やり方が分かりません。 VBA初心者なのでよく分かりません。分かりにくい説明文で申し訳ないですが、教えて下さい。宜しくお願いします(^_^;)

  • ExcelのVBAで上書き保存を確認したい

    VBAでGetSaveAsFilename メソッドを使うと、[名前を付けて保存]ダイアログボックスがでます。 ここでファイル名を指定するのですが、このとき同フォルダ内に同ファイル名があった場合でも、何のメッセージボックスもださずに上書きされてしまいます。 同フォルダ内に同ファイル名があった場合のみ、「上書き保存しますか?」というメッセージボックスをだしたいのですが、どのようにしたらよいでしょうか。 教えてください。 よろしくお願いします。

  • VBAを使用して、htmlファイルを編集したい

    お世話になっております。 エクセルのマクロを使用して以下の操作を行わせる場合、 どのようなVBAを作成すればよろしいのでしょうか。  Dドライブ直下のAディレクトリに保存されている,B.htmlをメモ帳で開き、  アクティブなエクセルファイルの A1~D10 のセルを B.html に張り付けて、  上書き保存する。 自分でも色々調べながらVBAを作ってみたのですが、 htmlファイルの上書き保存が上手くいきません・・・。