[[20210821004620]] 『アクティブブックのファイル移動』(miho) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『アクティブブックのファイル移動』(miho)

「●●●.xlsm」のファイルをアクティブな状態で、元々格納されているフォルダAからフォルダBへ移動するマクロを組みたいと思っているのですが、、全然わかりません。。

普段の操作で、フォルダAの「●●●.xlsm」ファイルを切り取って、フォルダBに張り付けるみたいなことをマクロでやりたいのですが、アクティブな状態だとできないので、やはりマクロでも難しいのでしょうか??
一旦、フォルダBに複製を作っておいて、アクティブファイルを消去するとか..。

色々と調べたのですが、初心者ということもあって、、どうしてもわからなかったので、どなたかお力を貸していただけないでしょうか。よろしくお願いします。

フォルダA
「●●●.xlsm」※移動後、フォルダAにはファイルが残らないようにしたい

↓移動

フォルダB
「●●●.xlsm」

< 使用 Excel:Office365、使用 OS:Windows10 >


 ざっくり言えば、こんな感じの流れでいいんでしょうかね?

    Sub test()
        Const DIR_B As String = "C:\xxx\" '移動先フォルダのパスを指定
        Dim p As String
        p = ThisWorkbook.FullName                       '現在のパスをpにメモっておく
        ThisWorkbook.SaveAs DIR_B & ThisWorkbook.Name   '移動先フォルダに名前を付けて保存し直す
        Kill p                                          'pにメモったパスのファイルを消す
    End Sub

(白茶) 2021/08/21(土) 08:55


 なぜ白茶さんのコードなのかで参考になるHPです。

https://www.ceodata.com/vba-worksheet-saveas/

 >注意点:SaveASメソッドを使用してワークブックを
 >新しいワークブックとして保存した後、元のワーク
 >ブックは閉じられ、元のワークブックの変更は保存されません。

 >ワークブックを新しいワークブックとして保存し、元のワーク
 >ブックの編集を続行する必要がある場合は、SaveCopyAsメソッド
 >を使用できます。 同じ名前のファイルがある場合、SaveCopyAs
 >メソッドは元のファイルを自動的に上書き保存します。

(通りすがり) 2021/08/21(土) 12:23


できましたー!!

白茶さん、ありがとうございました。
簡易的な承認システムを作りたくて、ファイルの移動のところで躓いていたので、本当に感謝です!!
(miho) 2021/08/21(土) 21:58


通りすがりさん

どうもありがとうございました!!
色々なシチュエーションが考えられるので、とても参考になりました。
(miho) 2021/08/21(土) 22:02


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.