質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Q&A

解決済

3回答

341閲覧

違うフォルダに全てファイルをコピペする

SugiuraY

総合スコア317

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

0グッド

0クリップ

投稿2018/11/01 06:34

C:\Users\mike\Desktop\a_project
に以下のファイルが存在しております。
hoge.pdf
fuga.pdf
bar.pdf

これを
C:\Users\mike\Desktop\集計\summary

で同じ名前で全ての(3つ)のファイルをコピペするvbaを考えております。
ファイル名を全て取得する等の以下のように分かっております。

vba

1 Dim strPath As String 2 Dim strFilename As String 3 4 strPath = "C:\Users\mike\Desktop\a_project" 5 strFilename = Dir(strPath & cnsDIR, vbNormal) 6 7 Do While strFilename <> "" 8'実行する処理 9 Loop

そこで、
全てのファイルをopenして保存先を改めて指定するのではなく、単純にコピペをすることは
vba上可能なのでしょうか、google先生で調べても意外とでてこなかったため、
アドバイスを頂ければ幸いです。

宜しくお願い申し上げます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sazi

2018/11/01 07:41 編集

「ファイル名を全て取得する等の以下のように分かっております。」 ループ内でDir()が必要なのは分かってますか?
SugiuraY

2018/11/01 08:22

その点は承知をしております。コメント有難うございます。
guest

回答3

0

検索の仕方を覚えた方が良いと思ったのであえてこっちで。
https://www.google.co.jp/search?hl=ja&q=vba+%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%AE%E3%82%B3%E3%83%94%E3%83%BC

投稿2018/11/01 06:50

torisan

総合スコア678

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

SugiuraY

2018/11/01 08:23 編集

有難うございます、無事解決致しました!
guest

0

FileCopyステートメントをご利用ください。
http://www.moug.net/tech/exvba/0060075.html

投稿2018/11/01 06:41

ttyp03

総合スコア16998

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

SugiuraY

2018/11/01 08:23 編集

有難うございます、無事解決致しました!
guest

0

ベストアンサー

FileCopyステートメントというのがあるのでそちらを使えばよいかと。

投稿2018/11/01 06:39

m.ts10806

総合スコア80850

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

SugiuraY

2018/11/01 08:19

いつもご回答有難うございます。 FileCopy ステートメントで無事解決しました!
m.ts10806

2018/11/01 08:21

解決「致します」と「しました」が混じってますが実際はどうなのでしょうか・・。 解決したのであれば最終的にどうなったかなどコメントいただければと。
SugiuraY

2018/11/01 08:26

日本語の誤り、失礼致しました。解決したコードは以下のとおりです。 Dim fso As Object Dim strSrc As String Dim strDst As String Set fso = CreateObject("Scripting.FileSystemObject") strSrc = "C:\pathfrom" strDst = "C:\pathto" fso.CopyFile strSrc, strDst Set fso = Nothing
SugiuraY

2018/11/01 08:28

すみません、FileCopy ステートメントではなく、結果的にFileSystemObjectのCopyFileメソッドを使用して解決しましたというのが適切でしょうか?vbaに明るくなく、大変申し訳ないのですが、FileCopyステートメントで調べてこちらが出てきました。
m.ts10806

2018/11/01 08:33

利用するオブジェクトによって使う機能も違ってきます。 目的地に向かうのに幾つも手段があるのと同じで、 何かを実現する際に、実現方法は1つではないので、実際に要件を満たせているのであれば問題ないと思います。 解決につながったようで何よりです。 ただ、私もtorisanさんが仰っているように「探し方」を覚えたほうが 自身で解決できるようになるので、「要件」から「適切なキーワードを抽出」できるように 考えてみてください。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問