• 締切済み

EXCEL VBA マクロ ファイルの保存

よろしくお願い致します。 ・既存のファイルから、”test01”と”test02”という名前のシートをコピーして移動。 ・そのファイル名を、4/1なら”test0401”とする。 ・そのファイルを、決まっているフォルダに格納。

みんなの回答

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.2

>既存のファイルから… test01とtest02を持つ「既存のファイル.xls」が開いている状態から開始 sub macro1()  dim myPath as string ’保存先のフォルダのパスを正しく記入すること  mypath = "C:\test\" ’コピーして名前を付けて保存する  worksheets(array("test01", "test02")).copy  activeworkbook.saveas filename:= mypath & "test" & format(date, "mmdd") end sub

urashiba12
質問者

補足

ありがとうございます! さらに、出来上がったファイルを閉じるにはどうすればいいでしょうか。

  • plus_x
  • ベストアンサー率62% (10/16)
回答No.1

VBA初心者ですが。 Sub test() Dim i As Long Dim moto As Workbook, saki As Workbook Dim nw As Boolean nw = True Set moto = Workbooks.Open("C:\moto.xls") For i = 1 To moto.Worksheets.Count If moto.Worksheets(i).Name = "test01" Or moto.Worksheets(i).Name = "test02" Then If nw Then Set saki = Workbooks.Add nw = False End If moto.Worksheets(i).Copy Before:=saki.Worksheets("Sheet1") End If Next i moto.Close SaveChanges:=False saki.Close SaveChanges:=True, Filename:="C:\test" & Right("00" & Month(Now), 2) & Right("00" & Day(Now), 2) & ".xls" End Sub エラー処理はしていませんので、その辺はご自身でお願いします。

urashiba12
質問者

補足

ありがとうございます!

関連するQ&A

  • エクセルVBAでセルにあるファイル名のファイルを同じくセルにあるフォルダ名のフォルダにコピー

    お世話になります。 絶対パスがあり、コピー元、コピー先(格納先)としてシート上の操作で ファイルをフォルダにコピーしたいのですが、VBAでできるでしょうか? ・B列B6以下にコピー元のファイル名(絶対パス) ・D6に格納先のフォルダ名(絶対パス) があります。 この条件だけでコピー→格納するコードを教えていただけたら助かります。よろしくお願いします。

  • Excelの使い方

    エクセルでシートをコピーして別のブック(既存のファイルという意味)にシートをコピーする方法がわかりません。 移動先に新しいブックとそのシートのファイル名しかありません。 どのようにしたら、既存のファイルにコピーできるのでしょうか。

  • エクセルマクロで任意のファイル名をつけて保存したい

     エクセルVBAについての質問です。  エクセルのマクロで、Aというファイルを開いて、そのうち必要なワークシートだけを抽出し、新しいブックに移動し、その新しいブックを新しいブックのsheet1のセルC2の文字列をファイル名として保存するようなマクロをくみたいと思っています。  ファイルを開いて必要なワークシートだけを抽出し、新しいブックに移動するところまではできましたが、新しいブックのセルC2の文字列をファイル名として保存することができません。FNを変数として宣言して、C2の文字列を代入し、FNをファイル名として保存しようとすると、ファイルにFNという名前が付いてしまいます。どうすれば、C2の文字列をファイル名として保存できるのでしょうか。なお、保存するフォルダはc:\変換ファイル\6月です。どなたか教えてください。よろしくお願いします。

  • Excel VBA別ブックのシートをコピーするには

    Excel2010のVBAで別ブックのシートをコピーしてくる方法 Excelファイル(C:\test\BOOK2.xls)のシート名が TESTというシートを自分のExcelファイル(C:\doc\BOOK1.xls)に コピーするにはどのように記述すればよいのでしょうか。 ・コピー先:自分のExcelファイル(C:\doc\BOOK1.xls)  VBAのコードがあるファイルです ・コピー元:C:\test\BOOK2.xlsのTESTシート  なお、TESTシートを持つ同じ名前(BOOK2.xls)のファイルが  別フォルダにもあります   Workbooks( )の引数にファイル名(BOOK2.xls)は指定できるのですが、 フルパス名(C:\test\BOOK2.xls)で指定できないので困っています。

  • マクロ VBA ファイル名を連番でつけたいのですが

    マクロ初心者なので教えて頂けるとうれしいです。 保存先フォルダにファイル名を自動で名前をつけて保存させるところまでできたのですが、 保存先フォルダに同名フォルダがある場合に、 もともと指定しているファイル名のお尻に連番をつけていくようにしたいのですが・・・ 例) 選択したシートをコピーして、 「A1+B1+見積書.xls」 という名前をつけて毎回保存していくのですが、 同名のファイルがある場合、 「A1+B1+見積書+1.xls」 「A1+B1+見積書+2.xls」 「A1+B1+見積書+3.xls」    …というふうにお尻に自動で連番をつけて 保存できるようにしたいのです。 宜しくお願い致します!

  • エクセルVBA 一枚のシートにcsvファイルをまとめる 

    教えてください。 以下の処理をしたいのですが、どのようにしたらよいか教えてください。 (1)デスクトップの1つのフォルダに格納しているcsvファイルを全て開く(ファイルがいくつあるかはその時によって違う) (2)開いたcsvファイルのデータがある行を全て選択して、開いてあるデータベースとしてあるシートに貼り付ける。 (これをcsvファイル数分実行する) (3)コピーの終わったcsvファイルを全て閉じる どうしても(2)の処理がわからず、どなたか教えてください。 よろしくお願い致します。

  • エクセル、VBAを使ってのファイル保存。

    エクセルでファイル(既存)を開いたら まず「名前を付けて保存」をして 新しく作ったファイルで作業を進めたいのですが 毎回保存のファイル名が変わるので 固定の名前での記述(VBA)が出来ません。 そこで、保存手前の段階である ダイアログボックスを表示させた状態で終わらせる というマクロは出来るのでしょうか? (保存先を決めたりファイル名を入力する状態) 色々試してみたのですが、どうにもうまく行かず… 皆さんの知恵をお借りしたいです。 宜しくお願いします。

  • 【Excel VBA】1つのファイルにまとめる方法

    1つのフォルダの中に複数のExcelファイルが保存されています。 seat1だけを1つに集めたExcelファイルを新規で作成したいです。 ※シート1をどんどん追加させるイメージです。 ※フォルダの中に入っているExcelファイル数は毎月変わります。 手順(1)フォルダに入っているExcelシートを開く 手順(2)sheet1を【シートの移動またはコピー】新規BOOKにコピー 手順(3)フォルダに入っているExcel分繰り返す。 手順(4)シート名を変更する。    どういう風にVBAコードを記入すればいいかわからないので教えていただきたいです。どうぞよろしくお願いいたします。

  • エクセルのマクロであるフォルダ内にある全エクセルファイルのシート1!(

    エクセルのマクロであるフォルダ内にある全エクセルファイルのシート1!(A1:X365)の値を取得し、コピー元のエクセルファイル名のシートに貼付ける方法を教えて頂けないでしょうか?できればコピー元のエクセルファイルは開かずに実行させたいです。エクセルは2003を使っています。

  • エクセルVBAでシートを別のフォルダに新規ブックとして格納

    デスクトップにある「元ブック」の「元」シートを、Dドライブの「先フォルダ」という名前のフォルダに「新ファイル」というブック名で格納したいのですが、教えていただけないでしょうか。

専門家に質問してみよう