[[20150126135515]] 『開いているブック名を変更して保存するマクロ』(ヨシ) ページの最後に飛ぶ

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

 

『開いているブック名を変更して保存するマクロ』(ヨシ)

開いているブック名を変更して保存するマクロがわかりません。

現在のブック名はりんご( Cドライブのドキュメントフォルダ内 VBAフォルダに保存 )

新しいブック名をシート4 のセルW1に入っている、みかん、としたい。

Worksheets(”Sheet4”).Range(”W1”) ← みかん

よろしくお願いします

< 使用 Excel:Excel2007、使用 OS:Windows8 >


 >開いているブック名を変更して保存するマクロがわかりません。

 名前を付けて保存のことです。
 BJ

>名前を付けて保存のことです。

BJさま

ファイルを最初に作った時に名前を付けるのと、変更するときも同じ手順なのですか?

(ヨシ) 2015/01/26(月) 14:58


 >ファイルを最初に作った時に名前を付けるのと、変更するときも同じ手順なのですか?
 同じです。

 ん???
 こういうやつ??
[[20150116141706]]『リネームマクロ』(ゆーじ
 BJ

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

カリーニンさま、BJさま

お二人のマクロで、別名のブックができました。

マクロともども、御親切なアドバイスありがとうございます。

大いに利用させていただきます。

(ヨシ) 2015/01/27(火) 18:02


コメント返信:

[ 一覧(最新更新順) ]


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