VBAでも良いので上手い解決方法はありませんか?
◆試してNGだったこと
1.ハイパーリンク
hoge.xlsでハイパーリンクは問題なく参照可能ですが、保存するだけでURLが相対パスに変わってしまい、リンク先が無いエラーになる。
相対パスでも、エクスプローラからは問題なく参照可能。
「file://コンピュータ名/・・・」のような絶対パス指定もNG。
2.オブジェクトの挿入(リンク)
foo.xlsを参照可能な人が、foo.xlsが見えている状態でhoge.xlsを上書き保存すると、本来参照不可の人も保存された時点の情報までは参照可能になってしまう。(更新が不可なだけ)
◆要件
対象のエクセルファイルはすべて(WORKGROUPの)ネットワーク共有フォルダ(Samba)上に存在。
hoge.xlsは、誰でも参照可能なパスに保存だが、foo.xlsは管理職のみ参照可能、bar.xlsは一般社員でも参照可能なフォルダに保存。
管理職ならhoge.xlsを開くだけで、foo.xlsもbar.xlsも参照を可能とし、一般社員の場合は、foo.xlsは参照不可としたい。
もっとも簡単なのは、
A.
管理者用のhogeAdmin.xls、一般社員用のhogeUser.xlsを作る。
だと思います。
B.
[データ]-[外部データの取り込み]
を使用すると、取り込んだ後のクエリを右クリック->プロパティで
のチェックをはずしておくことで
>foo.xlsを参照可能な人が、foo.xlsが見えている状態でhoge.xlsを
>上書き保存すると、本来参照不可の人も保存された時点の情報までは参照可能
は回避できます。
ダミーURL
Aは前提除外。
Bは確認済み。この設定があっても運用が煩雑になるだけなのであり得ない。