[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『自分以外の人がファイルを更新したかを確認したい』(みさ)
いつもお世話になっております。 今回も初心者ながらに、漠然とした質問をしてしまいますが・・・ お解りになる方がいらっしゃいましたら、教えてください。
共有のフォルダ内にデータの入ったエクセルファイルがあり、それを管理しています。 基本は私がそのエクセルファイルを更新しています。(他のシステムから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.