
Excel で、3 人だけがアクセスできる共有ドライブへの Vlookup があります。しかし、共有ドライブにアクセスできない他の人もこのデータにアクセスできます。
例えば:
ID を入力すると、名前やその他の機密情報が表示されます。名前やその他の機密情報は、3 人のユーザーのみが読み取ることができる共有ドライブに保存されているファイルから取得されます。
しかし、この共有ドライブにアクセスできない他のユーザーにこのファイルを転送すると、そのユーザーは ID を入力して機密情報を取得できます。
このような事態が起きないようにしたいのですが、何が問題なのでしょうか?
答え1
バージョンが指定されていないため、Excel 2010 について回答しますが、実際にクリックする項目の場所は異なる場合がありますが、同様のプロセスは少なくとも 2003 ~ 2013 で同様です。
簡単に答えると、クエリを使用してプライベート ファイルからすべてのデータを取得し、データを保存しないように設定して、毎回クエリを再実行する必要があります。
プロセスは次のとおりです。
- 公開ファイルで新しいワークシートを作成します
- データリボンで、
From Other Sources
左端のドロップダウンをクリックし、From Microsoft Query
- データソースを選択するように求められますので
Excel Files
、選択して[OK]をクリックします。 - プライベート ファイルを参照して選択し、[OK] をクリックします (はい、MSQuery は非常に古いダイアログ ボックスを使用するため、ファイルを見つけるのが面倒に感じる場合があります)。
- 取り込みたいデータが含まれているワークシートを選択します(ワークシートが複数ある場合は、各ワークシートごとにこのプロセスを繰り返します)
- クエリの設定を完了し、データを MS Excel に返します (ほとんどの場合、[次へ] と [OK] をクリックするだけです)
- 共有ファイルには、プライベート ファイルで選択したシートのすべてのデータが含まれるデータ テーブルが必要です。
- そのテーブル内のどこかを右クリックし、クリックし
Table
てExternal Data Properties
- ダイアログボックスのフィールドの右側にあるアイコン
Name
(紙を持っている手のような形)をクリックして、Connection Properties
Usage
タブ (すでにあるはずです)で、 というラベルの付いたボックスRefresh data when opening this file
と というラベルの付いたボックスをチェックしますRemove data from the external data range before saving the workbook
。- 実際のプライベート ファイルではなく、このデータを参照するようにすべての数式を書き直します。
実際には、ファイルが保存されて閉じられるたびにすべてのデータが消去されます。ファイルが開かれるとデータを更新しようとしますが、実際にアクセスできるのはプライベート ファイルにアクセスできるユーザーだけです。
唯一の欠点は、ファイルへのアクセス権を持たない人向けのエラー メッセージに対処しなければならないことです。(ポップアップが表示されたら [キャンセル] をクリックするように伝える以外に、現時点ではこれに対する答えはありません。)