他の人が作業して不定期に更新されるExcelの内容だけ知りたい。そのExcelをこちらで作業するつもりもないし、そのために社内サーバのファイルを見に行くのはめんどくさい。、Excelって他のファイルからデータ簡単に持ってこられるんですね。
というよりとても簡単だった。
なお、作業環境はWindows10、Excel2016を利用している。
社内サーバのExcelファイルを読み込む
条件
- 作業者は不定期にファイルを更新しサーバにアップしている
- 閲覧者は直接作業ファイルを操作しない ※1
- 閲覧者は自分のPCからExcelファイルの内容を確認できる
- サーバ内のExcelが更新されたら新しい情報をみることができる
- 閲覧者はデータを書き換えない
※1 多数の人間が不必要にサーバファイルを操作するデメリットは後述
方法
おおまかに言うと、閲覧用のファイルからサーバのファイルに接続してデータをインポート。閲覧用のファイルを開くたびにデータを更新する。
1.閲覧用ファイルを作る
まずは自分のPCに閲覧用のExcelを作る。
つまり、見るための閲覧ファイルは作業ファイルとは別なものとして存在させる。
2.別なブックに接続する
ここから先はMicrosoftのサポートページを参考に進めた。
そのページから引用する。
1.[データ] タブをクリックし、[データの取得]、[ファイルから]、[ブックから] の順にクリックします。[データの取得] ボタンが表示されない場合、[新しいクエリ]、[ファイルから]、[ブックから] の順にクリックします。
2.[データのインポート] ウィンドウでブックを参照します。
3.[ナビゲーター] ウィンドウで、インポートする表またはワークシートを選択し、[読み込み] または [編集] をクリックします。
別のブックに接続する – Excel
これでサーバ上のExcelから閲覧用のExcelに見たいデータを持ってくることができた。
閲覧用のExcelのデータを変更しても、サーバの作業ファイル
3.自動更新をオンにする
あとは「接続のプロパティ」から「ファイルを開くときにデータを更新する」にチェックしておけば、閲覧用ファイルを開くたびに、サーバのファイルからデータを更新してくれる。
今回はあくまで「見るだけ」が目的なのでこれでOK。
もし引っ張ってくるデータが大きかったり、更新の頻度が頻繁であるようなら、バックグランドで処理させるなり、時間単位での自動更新をさせるなりの設定をすればいい。
サーバファイルを直接操作するデメリット
今回の方法は他の誰かと一つのExcelファイルを使って共同編集しようということではない。あくまでデータを閲覧、もしくは一方的に利用する場合のことになると思う。
確かに確認するだけなら社内サーバに行って直接データを見ればすむことなのかもしれないが、その方法をとらなかったのは社内サーバのファイルを直接操作するデメリットが大きいから。
回復の方法はあるにせよ、基本的には社内サーバのデータは消えたら戻ってこないし、変更されたらそのまま残る、不可逆的なものだと思った方がいい。
つまり人為的ミスが起こった場合の被害が大きくなる。
デメリット1:データを上書きしてしまう
直接ファイルを開くということは、故意ではないにせよデータを変更してしまう可能性が常に付きまとうことになる。
自分の意図していないところでカーソルがあたり、データを書き換えてしまっていたり、消去してしまったり。そんな不注意なミスは起こらないと思っている人が多いかもしれないが、実際には結構起こりやすいミス。
デメリット2:ファイルを消してしまう
フォルダをデスクトップ上にたくさん開いていると、ローカルの自分のフォルダのつもりでデータを消したらサーバのフォルダだった、ということも起こりえる。
社内サーバから消えたデータは戻ってこない。
デメリット3:ミスが起こった場合の原因が特定しにくい
不特定多数でファイルを扱うと、何らかのデータのデバックが起こった場合にどこでミスが発生したのかがわかりにくい。
逆に社内サーバ内で作業していれば発生しないことかもしれないが、編集する場合はローカルにダウンロードし、作業後社内サーバにアップするというルールで運用した場合に、同時に何人かがファイルをダウンロードしていて、社内サーバに戻した際に最後の人がアップした状態に上書きされるので、他の人の編集が反映されない、ということが起こりうる。
コミュニケーションの問題になるかもしれないが、そもそもこのような状況を作りにくくするためにも、必要のない人間はファイルに触らないようにしたい。
デメリット4:誰かの作業の邪魔になる
誰かが社内サーバのファイルを開いていると、そのファイルは他の誰かが同時に編集できない。
閲覧用に見るだけにしておけば、誰かの邪魔をすることがなくて済む。
この時にファイルを開いたら更新する更新するように設定しておくと、社内サーバのファイルに変更が加わった際にも、変更を見ることができる。
社内サーバの別ブックに接続する場合に気をつけること
社内サーバの別ブックに接続した場合のデメリットももちろん考えられる。
編集できない
これは編集した箇所が社内サーバのデータに反映されないという意味だが、そもそもそのような目的ではやっていないので、共同編集が必要なら他の機能なりルールなりを利用すべきだ。
ファイルが移動すると見られない
ファイルパスでファイルを見ているので、もちろん社内サーバ内でファイルが移動されたり、消去された場合はデータの更新ができない。
これはどちらかというとサーバファイルをメインに扱う人とのコミュニケーションで解決したい。
感じが悪い
サーバファイルをメインに扱う人にはこちらのローカルでファイルを参照していることは一言伝えた方がいいかもしれない。
勝手に自分のデータを見られたり使われたりするのは気持ちの良いことではない。
今回は閲覧のみというように目的と用途がはっきりしているなら、社内サーバのExcelファイルと接続して自動更新させるっていうのは結構便利だと思った。
別にExcel2016でなくてもいいのかもしれなくて、もっと前からあった機能だったのかもしれないけれど、便利だったので備忘録。