[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『開いているブック名を変更して保存するマクロ』(ヨシ)
開いているブック名を変更して保存するマクロがわかりません。
現在のブック名はりんご( Cドライブのドキュメントフォルダ内 VBAフォルダに保存 )
新しいブック名をシート4 のセルW1に入っている、みかん、としたい。
Worksheets(”Sheet4”).Range(”W1”) ← みかん
よろしくお願いします
< 使用 Excel:Excel2007、使用 OS:Windows8 >
>開いているブック名を変更して保存するマクロがわかりません。
名前を付けて保存のことです。 BJ
BJさま
ファイルを最初に作った時に名前を付けるのと、変更するときも同じ手順なのですか?
(ヨシ) 2015/01/26(月) 14:58
>ファイルを最初に作った時に名前を付けるのと、変更するときも同じ手順なのですか? 同じです。
ん??? こういうやつ?? [[20150116141706]]『リネームマクロ』(ゆーじ BJ
ありがとうございます。こんな直近の過去ログをよく見ていませんでした。
参考にさせていただき、チャレンジしてみます。
(ヨシ) 2015/01/26(月) 15:33
質問とは直接は関係ないですが、↓の最後(2015/01/21(水) 22:57)で提示している 私のコードを試してみてください。
[[20150120175628]] 『自動実行のマクロ、欠陥マクロになってしまったの』(KUN)
特に「testB」の方。 二つのMsgBoxで「ThisWorkbook」の制御がどう遷移しているか、ということを観察してみてください。
開いているブックのリネームは、 >名前を付けて保存 し、必要に応じて元のブックはKillステートメント等で削除します。 また、
開いていないブックのリネームは Nameステートメント で行います。これはBJさんがリンクされたスレッドの通りです。
なお、開いているブックは Nameステートメント でリネームすることはできません。エラーになります。
ブックが開いているか否かを判定するのに Nameステートメント で元の名前と同じ名前にリネームしようとしてエラーになるのを 利用して判定することもできます。
他には全てのインスタンスのエクセルアプリケーションの全ての開いているブック 一覧をチェックする、という方法もあります。 手っ取り早いのは先のエラーを利用する方法です。 (カリーニン) 2015/01/26(月) 22:03
おまけ。 たぶん普通では、使われないと思うけど。 開いているファイルも複製コピーできます。 FileCopyも開いているファイルに対して行うと、普通はエラーになるけどね。 Nameステートメントで、試したことがないので結果は不明。
複製元.xlsmファイルが開いている状態で実行。 尚、バックアップフォルダに複製するコードをマクロが書いてあるブックと 同じ場所へとチョロっと変更したため、見た目なんかおかしな格好になってますが。 BJ
With Workbooks("複製元.xlsm") If Not .ReadOnly Then .Saved = True .ChangeFileAccess xlReadOnly End If
BkupPs = .Path & "\バックアップブック.xlsm" ThisWBPs = .FullName
FileCopy ThisWBPs, BkupPs DoEvents .ChangeFileAccess xlReadWrite End With
お二人のマクロで、別名のブックができました。
マクロともども、御親切なアドバイスありがとうございます。
大いに利用させていただきます。
(ヨシ) 2015/01/27(火) 18:02
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.