ファイルの移動について

このQ&Aのポイント
  • ファイルの移動についてです。A列にファイルの一覧があります。この一覧にあるファイルを全てTドライブのフォルダに同じ配下で移動したいのです。
  • movefile を使うとFileObjectSystemを使うことになり私には変数をどのように設定していいかわかりません。
  • ファイルの移動についての質問です。移動したいファイルの一覧がA列にあります。Tドライブのフォルダに同じ配下で移動する方法を教えてください。
回答を見る
  • ベストアンサー

ファイルの移動について

いつもお世話になっております。 ファイルの移動についてです。 A列にファイルの一覧があります。 この一覧にあるファイルを全てTドライブのフォルダに同じ配下で移動したいのです。 A列 ファイル S:\未完成\data\DA00001146.xls S:\未完成\test\data\DA00001147.doc S:\未完成\test\DA00001148.ppt 逆スラッシュは実際には半角の¥で表示されています。 ファイル T:Sドライブ\未完成\data\DA00001146.xls T:Sドライブ\未完成\test\data\DA00001147.doc T:Sドライブ\未完成\test\DA00001148.ppt movefile を使うとFileObjectSystemを使うことになり 私には変数をどのように設定していいかわかりません。 Sub test() Dim FSO As Object Set FSO = CreateObject("Scripting.FileSystemObject") ''C:\Tmp\フォルダ内の*.xlsをC:\Work\フォルダに移動します FSO.MoveFile "C:\Tmp\*.xls", "C:\Work\" Set FSO = Nothing を探してきて、何とかしようと思ったのですが、うまく 使えませんでした。 ご教授ください。 よろしくお願いします。

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

  • ベストアンサー
  • usami33
  • ベストアンサー率36% (808/2210)
回答No.1
intyiyasaka
質問者

お礼

どうにか自分で作ることが出来ました。 ありがとうございました。

intyiyasaka
質問者

補足

説明が悪くてすみません。ファイルを移動するコードは上記のまま、動作しているのですが、これをA列のファイル一覧を順に移動するFor Next構文(たぶん)に当てはめる方法がわからなかったのです。お時間とらせてすみませんでした。

その他の回答 (1)

回答No.2

こんにちは。 >S:\未完成\data\DA00001146.xls '8-3型ではない 質問に書かれたコードは間違いないはずですが、実際にうまくいかない場合、ロング・ネームになっていたり、空白が入ったりした場合、 """C:\Users\UserName\My Documents\Excel\経理\""" のように、「""」で、くくってあげなくてはなりません。

intyiyasaka
質問者

お礼

どうにか自分で作りました。 考えてくださって、ありがとうございました。

intyiyasaka
質問者

補足

こんにちは。 さっそく、有難うございます。 説明が悪くてすみません。ファイルを移動するコードは上記のまま、動作しているのですが、これをA列のファイル一覧を順に移動するFor Next構文(たぶん)に当てはめる方法がわからなかったのです。お時間とらせてすみませんでした。

関連するQ&A

  • フォルダの移動について

    毎度お世話になります。m(__)m 例えばHドライブにある全フォルダを同じ階層を保ったまま フォルダだけ、Kドライブに作成するということは 可能でしょうか? H:\未完成\D001512.xls H:\未完成\A027739.xls H:\完成\製造\M124.xls H:\完成\営業\S117.xls とあったとすると K:\未完成 K:\完成\製造 K:\完成\営業 とこんな感じにバシャッと... そんなこと夢物語ですかね... よろしくお願いします。

  • 再:ファイルのフォルダ間移動の自動化について

    Windows XP Professional です。 昨日、以下の質問、  『フォルダ \C\作業用 に何個かエクセルファイルを保存します。   これを、 \D\保管 に全て移動するにはどうすれば良いでしょうか?』 に対して、以下のご回答を頂きました。  『batでいかがでしょうか?   以下サンプルです   Cドライブのtes1フォルダ内のエクセルを   Cドライブのtes2フォルダに移動する場合   エディタ等にて   move C:\tes1\*.xls C:\tes2   記載してファイル名をtest.batとして保存します。   あとはクリックすればOKです。』 しかし、 自PCのハードディスク内であれば、上手く行ったのですが、 ネットワーク間でやってみたら、無反応でした。 move \\PC15\tes1\*.xls H:\tes2 PC15という名前のパソコンの共有フォルダtes1にあるエクセル全部を ドライブHを割り当てた共有フォルダtes2に移動しようとしました。 どこがまずいのでしょうか? ご教授お願いします。

  • VBScriptでファイル検索

    こんにちは。 Dドライブのどこかにある「あいうえお.xls」ファイルのパス をメッセージ表示するようなスクリプトを作りましたが、上手 く表示されません。どこに不具合があるのか、ご教授ください。 お願いいたします。 Option Explicit Dim FSO,File,SubFolder Set FSO = CreateObject("Scripting.FileSystemObject") ShowSubfolders FSO.GetFolder("D:\") Sub ShowSubFolders(Folder) For Each File in Folder.Files If File.Name = "あいうえお.xls" then      Wscript.Echo File.path End If Next For Each Subfolder in Folder.SubFolders ShowSubFolders Subfolder Next Set FSO = Nothing End Sub

  • 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)で指定できないので困っています。

  • Office2007で、下位バージョンとの互換性のあるファイルを作るには?

    よろしくお願いいたします。 Office2007では、デフォルトでXML形式のファイル(docx,xlsx,pptx等)が作成されますが、これをデフォルトで今までのファイル形式(doc,xls.ppt等)で保存するようには出来るのでしょうか。 当面は、今までのファイル形式(doc,xls.ppt等)を、外部との連絡等の為、オフィス内でスタンダードにしたく、しかしOffice2007にバージョンアップする必要がある為です。 アドオンソフトを使えば、XML形式のファイルもバージョン2000,2003等でも開けるかと思いますが、外部にそれを強いることは難しいと思っています。

  • ファイルを移動先のフォルダへ移動させるVBA教えて

    とあるシートのB列の値かつAM列の値と、とあるフォルダ内にあるファイルの名称が部分一致したときに、 そのファイルを移動先のフォルダへと移動させるVBAを教えていただけないでしょうか? この内容のVBAを作ったのですが、エラーが出てしまいます(エラーの箇所はコード内に示している)、またこのエラーが影響しているか分からないのですが分別されているのですが上手くいっていません VBA初心者なのでどうか分かりやすくお教えお願い致します Sub 分別() '移動元のフォルダの設定 Const xFrm As String = "C:\before\" '移動先のフォルダの設定 Const xTo As String = "C:\after\" 'アクティブになっているシートのB列の値かつAM列の値と、C:\before内のファイルの名称が部分一致した時、そのファイルをC:\afterへと移動する '((例)B列:M123456、AM列:789、C:\before内のファイル:M123456-789-C12.csv) Dim i As Long, xFile As String With ActiveSheet For i = 3 To .Cells(Rows.Count, 1).End(xlUp).Row With .Cells(i, 2) xFile = Dir(xFrm & "*" & .Value & "*") Do While xFile <> "" If xFile Like "*" & .Offset(, 37).Value & "*" Then Name xFrm & xFile As xTo & xFile End If xFile = Dir() Loop End With Next i End With 'C:\before内に残っているファイルを、C:\after2に移動 Dim fso As Object Dim MFir As String Dim SFir As String Set fso = CreateObject("Scripting.FileSystemObject") MFir = "C:\before\*.*" SFir = "C:\after2\" fso.MoveFile MFir, SFir →ここでエラー出る Set fso = Nothing MsgBox "終了" End Sub

  • vba ファイルの移動について

    フォルダAの中にあるたくさんのpdfファイルの中から、 ファイル名の頭文字3つがE列に記載した「aaa」だったら フォルダBに移動させるという内容にしたいです。 ネット検索などで、近いものを作成しましたが(下に貼り付け)、 下から4行目、「fso.moveFile FolderA & "\" & fileName, FolderB & "\" & fileName」で 「実行時エラー'53'  ファイルが見つかりません。」 とエラーが出てしまいます。 どの様に書き直せばよいのでしょうか? どなたかご存じでしたら、ぜひお教え下さい。 よろしくお願いします。 エクセル2010を使用しています。 Sub CheckAndMoveFiles() Dim FolderA As String Dim FolderB As String FolderA = Range("D1").Value FolderB = Range("B2").Value Dim fso As Object Set fso = CreateObject("Scripting.FileSystemObject") Dim ws As Worksheet Set ws = ActiveSheet Dim lastRow As Long lastRow = ws.Range("E" & Rows.Count).End(xlUp).Row Dim r As Long Dim fileName As String For r = 1 To lastRow If ws.Cells(r, "E").Value <> "" Then fileName = ws.Cells(r, "E").Value dFileName = Dir(FolderA & "\" & Left(fileName, 3) & "*.pdf") Do While dFileName <> "" dFileName = Dir() Loop fso.moveFile FolderA & "\" & fileName, FolderB & "\" & fileName 'ここでストップ End If Next End Sub

  • VBA初心者です.文字を抽出しファイルを移動したい

    セルA1に表示された文字(例,CK001など)の右から3番目までの文字を拾って,その文字を含むファイルをAからBに移動したいのですが,上手く作動しませんでした.パス内に変数は使用できないのか(ここではZ)「ファイルが見つかりません」となってしまいます.良い方法をご教授いただければ幸いです.下記は自分が作成したプログラムです. Sub Sample() Dim fso As Object Set fso = CreateObject("scripting.filesystemobject") Dim A As String Dim B As String Dim Z As Variant Z = Right(Range("A1"), 3) A = "C:\Users\abc\Documents\test\*Z*" B = "C:\Users\abc\Desktop\1\2\" fso.MoveFile A, B End Sub

  • フォルダ内のファイルデータをひとまとめにしたいです

    エクセル2003です。 Cドライブに、『売上』というフォルダがあります。 売上フォルダの中には、下記画像のようにエクセルファイルがあります。 『本店.xls』 『銀座店.xls』 『お台場店.xls』 のデータを、『集計.xls』へひとまとめにして表示させたいのです。 データの内容は毎日更新され追加されていきます。 フォルダ内のファイルも、日によって変わり、 6/1は『本店.xls』 『銀座店.xls』 『お台場店.xls』 6/6は『本店.xls』 『日本橋店.xls』 6/10は『銀座店.xls』 『お台場店.xls』 『日本橋店』といった感じで、変更されます。 毎日、『集計』ファイルを開くと、フォルダ内全てのファイルがひとまとめになるようにしたいのです。 VBAで作ってみましたが、うまくいきません。 教えて頂けますか?よろしくお願い致します。

  • MSOfficeのファイルを開かずにダウンロードさせるには?

    OfficeがインストールしてあるPCで、インターネットエクスプローラを用いて Web上のOffice形式のファイル(*.doc,*.ppt,*.xlsなど)のハイパーリンクをクリックすると、 ブラウザ上でファイルが開かれてしまいますが、それを直接ダウンロードさせるような タグはありますでしょうか? 宜しくおねがいいたします。

    • ベストアンサー
    • HTML

専門家に質問してみよう