[[20091113095604]] 『自分以外の人がファイルを更新したかを確認したい』(みさ) ページの最後に飛ぶ

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

 

『自分以外の人がファイルを更新したかを確認したい』(みさ)

 いつもお世話になっております。
 今回も初心者ながらに、漠然とした質問をしてしまいますが・・・
 お解りになる方がいらっしゃいましたら、教えてください。

 共有のフォルダ内にデータの入ったエクセルファイルがあり、それを管理しています。
 基本は私がそのエクセルファイルを更新しています。(他のシステムからDLして)
 しかし、そのファイルは私以外の方も閲覧・更新する場合があります。

 私が前回更新した後から、再更新(DL)する間の期間に他の人が上書き保存したか
 を知りたいのです。
 共有ドライブなので、プロパティで更新履歴を見ても、名称は記録されておらず
 皆同じ名前で保存されてしまいます。
 ですので、エクセル内で「前回の更新は『私』が更新した」というのがわかる方法
 はないでしょうか?
 ファイルの内容はリスト・・というかデータです。
 列が"BO"まであり行は10000行近くあるので、エクセル自体に書き込むという事は
 避けたいです。
 マクロか何かでできないでしょうか?
 OS:WindowsXP,version: Excel2003です。

 説明下手で申し訳ございませんが、どなたか教えてください。
 説明上不足している部分がありましたらご指摘ください。補足します。
 よろしくお願いします。

 >エクセル内で「前回の更新は『私』が更新した」
 この、「私」というのは何をさすのでしょうか?
 コンピューター名で良いのなら、ファイルを開いたあとに
 ファイル→プロパティ→詳細情報タブで最終保存者が確認できます。
 (momo)

 (momo)サマ
 ありがとうございます。
 しかしながら、上記での説明不足で申し訳ありませんが・・・
 プロパティの詳細情報では
 共有ドライブで使用している為(らしいです)コンピューター名は表示されず
 皆同じ名前(社名)が表示されてしまうのです。

 上記の理由で、何か良い方法はないか・・教えていただきたく書き込みをした次第です。
 よろしくお願い致します。

 全てのPCでエクセルのユーザー名が社名になっているから
 誰が保存しても、同じ名前に成っている
 って事とは違うのですか?

 試しに、こんなのをやってみられては?

 Sheet1を作成。
 ThisWorkbookモジュールに
 '------
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    Sheets("Sheet1").Range("1:1").Insert Shift:=xlDown
    Sheets("Sheet1").Range("A1").Value = Environ("UserName")
    Sheets("Sheet1").Range("B1").Value = Now
End Sub
 '------

 「更新したか」ではなく
 「セーブしたか」しか分かりませんが。

 上記のような物で良ければ
 >エクセル自体に書き込むという事は避けたいです。
 と言う事なので、同じタイミングで テキストファイルに書き込む 等
 やってみられてはどうでしょう。

 (HANA)

 (HANA)さま

 今更ですが・・・コメント拝見いたしました。
 ありがとうございます!!!!上記で全く問題ありません!
 助かりました。
 早速使わせていただきます。
 (みさ)

 更新日時を見れば済む話では・・・
 (当然、前回の更新日時は覚えておく必要がありますが・・・)
 (とおりすがり)

コメント返信:

[ 一覧(最新更新順) ]


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