[[20150413111027]] 『UpdateFromFileで再起動して書込可能にしたい。』(setcom) ページの最後に飛ぶ

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

 

『UpdateFromFileで再起動して書込可能にしたい。』(setcom)

自分のブックを保存して、再起動して、書き込み可能にしたいのですが。
.UpdateFromFileは、読み取り専用でなくては、機能しないので、
先に読み取り専用にして、.UpdateFromFileを実行しています。

しかし、再起動した時に、読み取り専用のままで起動して、しかも
auto_openは実行されないようです。(auto_openで、書込可能にすれば
良いと思い、下の様にしましたが、再起動した時に、auto_openは実行されません。)
Workbook_Openも起動しない。

auto_open自体が起動しないのは、それとして、他に手はあるでしょうか?
やはりシートチェンジ等のイベントに頼るしかありませんか?

Sub auto_open()

    ThisWorkbook.ChangeFileAccess Mode:=xlReadWrite '書込可能
    MsgBox "リスタートしました。"
End Sub

Sub restart() 'リスタート

    Application.DisplayAlerts = False '確認メッセージを表示しない。
    ThisWorkbook.Save '保存する。
    ThisWorkbook.ChangeFileAccess Mode:=xlReadOnly '読み取り専用
    ThisWorkbook.UpdateFromFile '再起動
End Sub

< 使用 Excel:Excel2013、使用 OS:Windows7 >


 Auto_Openの中身を別のプロシジャーにして、各々呼び出せばよいのではないでしょうか?
 ところで、なんで再読み込みする必要があるのですか?
 Auto_Opneで書込み可能として開くなら、いちいちUpdateFromFileで更新する必要ないと思うのですけど
(稲葉) 2015/04/13(月) 12:28

[[20150410130248]]

 >複写した後で一度ファイルを閉じて開きなおすか

 が目的ですか?  いろいろ考えますねえ!!

 Ontimeメソッドでダミーのプロシジャーを指定して、保存して閉じてみては?

(ichinose@遅い昼食中) 2015/04/13(月) 13:48


ichinoseさん有り難う御座いました。
以下の様に出来ました。
ダミーの?となりましたが、以下をやってみて意味がやっとわかりました。
auto_openを再度実行させたければ、そうすればいいし、単に保存するだけなら
なんでも良いと言う事ですね。
しかしOnTimeは、何となく知ってましたが、closeしてもゾンビの様に
実行してくれるとは考えてもいませんでした。
時間設定については、多分保存する時間も関係してくるのか。
ここではとりあえず、1だろうが10だろうが動作しました。
また、確認してみます。
大変有り難う御座いました。
Sub restart() 'リスタート
    Application.OnTime Now + TimeValue("00:00:01"), "auto_open"
    Application.DisplayAlerts = False '確認メッセージを表示しない。
    ThisWorkbook.Save
    ThisWorkbook.Close
End Sub
稲葉さん、
ichinoseさんがおっしゃるとおり、[[20150410130248]] で、ヒントをもらったのですが、
私には難し過ぎたので、一度ブックを保存して、再起動する方法を選択した次第です。
どうも有り難う御座いました。
(setcom) 2015/04/14(火) 04:23

 いまさらですが、納得です。
 ちなみに、こうしたらどうですか? という提案でした
    Sub Auto_Opne()
        Call BookOpenIni
    End Sub
    Sub BookOpenIni()
        ThisWorkbook.ChangeFileAccess Mode:=xlReadWrite '書込可能
        MsgBox "リスタートしました。"
    End Sub
    Sub restart() 'リスタート
        '(省略)
        Call BookOpenIni
    End Sub
(稲葉) 2015/04/14(火) 18:08

コメント返信:

[ 一覧(最新更新順) ]


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