マクロで連番のファイルを読み込み、同じ操作をする方法

このQ&Aのポイント
  • エクセルのマクロを使って、連番のファイルを読み込み、同じ操作をする方法を教えてください。
  • 具体的には、1test.csv、2test.csv、3test.csvのような連番のファイルを読み込んで、操作後に連番の番号で保存したいです。
  • for文を使って連番のファイルを操作する方法についても教えてください。
回答を見る
  • ベストアンサー

マクロで使うfor文

エクセルのマクロでforを使って、連番のファイルを読み込んで全く同じ操作をして、連番の番号で保存したいのですが、この場合のforの使い方が分かりません。 1test.csv 2test.csv 3test.csv と連番のファイルがあるとき、マクロで、 for i = 1 to 3 Workbooks.Open Filename:= _ "C:\1test.csv" ・ ・ ・ というように読み込んでそして何かしらの操作をして保存しようと考えているのですが、この場合、 "C:\1test.csv" この部分をどのように書き換えたらいいのかがわかりません。 どのように書き換えたらいいのでしょうか?保存方法はおそらく読み込み方法と同じだと思うのですが。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

試してないのでなんともいえませんが、 for i = 1 to 3 Workbooks.Open Filename:= _ "C:\" & i & "test.csv" これでどーでしょーか?

ryutai
質問者

お礼

ありがとうございます。できるようになりました。

関連するQ&A

  • 指定のファイルを開くマクロ

    こんにちは。 いろいろやってみましたが、うまくいかなかったのでアドバイスいただけませんか。 マクロで指定のファイルを開く場合、 ChDir "C:\File" Workbooks.Open Filename:="リスト.csv" のように指定しています。 A1にC:\File A2にリスト.csv このように記述して ChDir "A1" Workbooks.Open Filename:="A2" のように開くようにはできませんか。 それと、似たようなことですが Windows("リスト.csv").Activate と指定するところを Windows("A2").Activate のように指定したい場合はどうでしょうか。 次に、A1にディレクトリ A2にファイルネームを指定するためにダイアログを出したいのですが、 そのような便利なマクロはあるのでしょうか。 よろしくお願いします。

  • Excelマクロで同じブックにCSVを読み込むには

    Excelの指定したシートにCSVファイルを読み込ませたいのですが 以下のVBAマクロを実行すると新しいブックが起動して 新しいブックの方にCSVファイルが読み込まれてしまうのですが これをVBAマクロを実行しているブックの指定のシート(例えばSheet3など)に 読み込ませたいのですがどのように記述すればよいのでしょうか。 よろしくお願いします(Excel2010) Sub Macro1()  ChDir "C:\test"  Workbooks.Open Filename:= "test1.csv" End Sub

  • エクセルのマクロでファイルを自動で保存するには?

    こんにちは。お世話になります。 エクセルのVBAマクロ文の書き方でお知恵を拝借したいと思います。 さて、私のかかる業務でエクセルファイルで営業実績を出しています。 COBOLで作ったファイルをCSVにインポートして そのCSVの値を別のエクセルファイルで引っ張るという手順を踏んでいますが、 それをマクロで動かすとエクセル上で『保存しますか?』と聞いてきます。 答えは『はい(Y)』で確定しているので、その命令文さえ組み込められればいいのですが、 その命令文の書き方が判りません。 (解決したいVBAマクロの命令文) Workbooks.Open Filename:="D:\(Aファイル).csv" Workbooks.Open Filename:="D:\(Aファイルの値を引っ張るBファイル).xls" ThisWorkbook.Saved = True (ここで聞いてくる注意に自動で『Y』を入れたいと思っています。) ActiveWindow.Close ActiveWindow.Close 以上、お知恵を拝借したく、お願いいたします。

  • Excelでファイルを開くをマクロで行いたい

    マクロ初心者です "ファイルを開く"をマクロの記録で記録させると ChDir "C:\Documents and Settings\○○\△△\※※" Workbooks.Open Filename:= _ "C:\Documents and Settings\○○\△△\※※¥LotLog20070131.csv" Windows("●●●.xls").Activate End Sub と記録されます この中で 開きたいファイルネ-ム(上記ならばLotLog20070131.csv)を "●●●.xls"の どこかのセルを参照に開きたいのですが どうすれば宜しいのでしょうか?

  • ExcelのマクロでCSVファイルを開くと遅いのですが

    ExcelのマクロでCSVファイルを開くと遅いのですが速く開く方法はありますか? 普通にファイル-開くに比べてかなり遅いです。 下記のVBAで記述してあります。 Workbooks.Open Filename:=fname ActiveWorkbook.SaveAs Filename:=fname, FileFormat:=xlCSV, _ CreateBackup:=False ActiveWorkbook.Close savechanges:=False

  • マクロでファイルオープン

    エクセルのマクロでtest.xlsファイルをオープンする際に元々test.xlsファイルの属性が読み取り専用になっているものを、読み取り専用チェックをはずした状態でオープンすることは可能でしょうか? Workbooks.Open Filename:="test.xls" ReadOnlyRecommended:=False とかやってもなかなか上手くいきません。

  • EXCELマクロを無効にして開く方法

    掲題の通りなのですが、EXCEL2007で作成されたマクロ有効ファイル(XLSM形式)を マクロ無効の状態で開く方法が分からず困っております。 マクロの内容は Workbook_Open 処理で、特定セルに入力されている EXCELファイルを開き、自身は閉じるというものです。 Private Sub Workbook_Open() Dim FileName As String '1ファイル目 Range("A2").Select FileName = ActiveCell.FormulaR1C1 Workbooks.Open FileName:=FileName ThisWorkbook.Activate '2ファイル目 Range("A3").Select FileName = ActiveCell.FormulaR1C1 Workbooks.Open FileName:=FileName ThisWorkbook.Activate ・・・・・・繰り返し DoEvents ThisWorkbook.Close End Sub 上記の特定セルに設定してあるファイルパスを変更するためには マクロを無効にして開かなければなりません。 マクロのセキュリティを変更して、「すべてのマクロを無効にする」を設定して 該当のファイルを開けば良い事は分かっているのですが、他に分かりやすい方法で マクロ無効状態で開く方法があれば、ご教授頂ければと思います。

  • ExcelマクロでCSVを開くと勝手に変更される項目があります

    ExcelマクロでCSVを開くと勝手に変更される項目があります Excel2003のマクロでの質問なのですが。 AAAというCSV形式のファイルに「3-90」という項目があります。 Excelから、ファイル - 開く - AAA.CSV で呼び出したときはセルに「3-90」と表示されます。 ところがマクロから Workbooks.Open Filename:="C:\Book1.csv" を実行して開くと「3-90」が「Mar-90」と表示され、セルの内容も「1990/3/1」と勝手に変換されて しまいます。 解決策ありましたら、教えてください。 できたら原因もお願いします。 よろしくお願いします。

  • エクセル2007 マクロ CSVにコピー後日付がおかしくなった

    エクセル2007を使用しています CSVファイルを開き日付をコピーするマクロを作成しております ■問題 エクセル上2011/2/11という文字が、11/2/2011とCSVファイル上表示されてしまいます。 以下の対策をとってはいるのですがうまくいきません Workbooks.Open Filename:= _ "\\\\\\\\\\\\\.csv", Local:=False 他に対策はないでしょうか?

  • EXCEL2003でマクロ ファイル操作

    Workbooks.Open Filenameでファイルを開くとき フルパスを指定してやらないといけませんが、 マクロ実行ファイルと同ディレクトリにある場合は パスはいらないのでしょうか? 別途記述(ロジック)方法があるのでしょうか? よろしくお願いします。

専門家に質問してみよう