プロが教える店舗&オフィスのセキュリティ対策術

エクセルのマクロについて教えてください。
マクロを実行すると
コピー先のフォルダ名を検索して、条件にあったフォルダの中に指定フォルダをコピペ出来る方法を教えてください。 親切にコード共教えて頂ける方、何卒、よろしくお願いいたします。
以前からマクロについて質問すると
ここは全てを教えてくれる場所では無いとの回答を頂きますが
以前は親切に教えて頂けました
大変困ってます
誰か助けてください
コピー先のフォルダ内に色々な名前のフォルダがありますが、
フォルダ名が「○○○○○○○○-○_物件名」があります。
フォルダ名のルールとして、「物件名の前に必ず「_」半角アンダバーがあります。
物件名構成として
1.先頭に、〇の半角英数字8文字「-」半角ハイフン「_」半角アンダーバー+物件名
例えば
123454678-5_北海 太郎
又は
2.先頭に、〇の半角英数字9文字「-」半角ハイフン「_」半角アンダーバー+物件名
例えば
1234546789-6_北海 花子
物件毎にID番号が変更になりますので、「○○○○○○○○-○_」又は「○○○○○○○○○-○_」を検索して該当したフォルダ名がある場合に
コピー元のフォルダ内にある「検査時必要図書(正本)」のフォルダを
「123454678-5_北海 太郎」や「1234546789-6_北海 花子」のフォルダ内にコピーできる方法を教えてください。
コピー元のフォルダ
「\\nas-sp01\share\確認部\■意匠\戸建\戸建て電子申請関連\ひな形\新フォルダ構成」に「検査時必要図書(正本)」のフォルダがあります。
コピー先のフォルダ
「\\nas-sp01\share\確認部\電子申請 関連\1.受付\1.確認申請」の中に123454678-5_北海 太郎等があります。
マクロを一度実行をして該当フォルダにコピペされた後で、もう一度マクロを実行しても一度、コピペが完了している場合は、上書きでフォルダをコピーしないようにお願いいたします。
尚、マクロを設定しているブックは
「\\nas-sp01\share\確認部\電子申請 関連\1.受付\1.確認申請」の中にあります。
何卒、よろしくお願いいたします。

「エクセルのマクロについて教えてください。」の質問画像

質問者からの補足コメント


  • ○○○○○○○○-○_物件名
    ○○○○○○○○○-○_物件名
    の中に英数字以外は入ることはありません。
    専用ソフトを使用して相手がWeb上で物件をアップすると
    物件の先頭に
    ○○○○○○○○-○_
    ○○○○○○○○○-○_
    が自動で割り振りされます。
    何故か、「○○○○○○○○-○_」の時もあれば
    「○○○○○○○○○-○_」の時もあり、その割り振りについては私ではわかりませんが、〇部分は必ず半角英数字です。

      補足日時:2023/10/17 21:20
  • フォルダ「検査時必要図書(正本)」の中にはファイルやフォルダがあり。
    フォルダ「検査時必要図書(正本)」ごと、○○○○○○○○-○_物件名のフォルダ直下にコピーする。イメージです
    更に
    フォルダ「○○○○○○○○-○_物件名」内にフォルダ「検査時必要図書(正本)」が存在している。場合はコピーが完了しているという認識でお願いします
    親切に教えて頂ける方
    よろしくお願いします

      補足日時:2023/10/17 21:20
  • ご連絡ありがとうございます
    はい フォルダをコピペしたいです
    よろしくお願いします

      補足日時:2023/10/18 07:45
  • うーん・・・

    回答ありがとうございます。
    ご親切にありがとうございました。
    先ほど同じような質問をさせて頂きましたが、
    コピー先にワイルドカードは指定できないと回答を頂きました。
    なので、この質問の内容は無理だと言う事でしょうか。
    よろしくお願いいたします。

    No.4の回答に寄せられた補足コメントです。 補足日時:2023/10/18 16:19
  • ご連絡ありがとうございます
    はい フォルダをコピペしたいです
    よろしくお願いします。

    No.2の回答に寄せられた補足コメントです。 補足日時:2023/10/18 16:20

A 回答 (5件)

> コピー先にワイルドカードは指定できないと回答を頂きました。


> なので、この質問の内容は無理だと言う事でしょうか。

めんどくさいだけで、無理ではないと思います。

あと、バッチファイル作って xcopy するって方法もあります。
https://vbabeginner.net/execute-batch-file/
https://www.ubackup.com/jp/articles/xcopy-comman …
    • good
    • 0

No.3訂正



誤)If FSO.FileExists("\\nas-sp01\share\確認部\電子申請 関連\1.受付\1.確認申請\" & [フォルダ名]) Then

正)If FSO.FileExists("\\nas-sp01\share\確認部\電子申請 関連\1.受付\1.確認申請\" & [フォルダ名] & "\検査時必要図書(正本)") Then
この回答への補足あり
    • good
    • 0

> 以前からマクロについて質問すると


> ここは全てを教えてくれる場所では無いとの回答を頂きますが
> 以前は親切に教えて頂けました

それは、あなたがいつまでも成長しようとしないことをみんなが分かってきたからです。
ちょっとでも良いのでご自身でソースコードを書いてここに提示すれば反応があると思いますよ。

●コピー先のフォルダ名を取得する方法
[フォルダ名] = Dir("\\nas-sp01\share\確認部\電子申請 関連\1.受付\1.確認申請", vbDirectory)
Do ループで回す。

●コピー先候補のフォルダがコピペ済みかどうかの判定
Dim FSO
Set FSO = CreateObject("Scripting.FileSystemObject")
If FSO.FileExists("\\nas-sp01\share\確認部\電子申請 関連\1.受付\1.確認申請\" & [フォルダ名]) Then
[コピー済み処理]
Else
[未コピー処理]
End If
    • good
    • 0

>コピー先のフォルダ名を検索して、条件にあったフォルダの中に指定フォルダをコピペ出来る方法を教えてください。


フォルダをコピペするのですか?
この回答への補足あり
    • good
    • 0

>以前は親切に教えて頂けました


良かったですね。
神待ちってところですかね。
www
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A