[[20091217084501]] 『リンクの設定(値の更新)について』(take) ページの最後に飛ぶ

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

 

『リンクの設定(値の更新)について』(take)

当方、知識に乏しいので皆様にご教授いただきたく思います。
まず値をリンクさせるための“データベース用エクセルファイル(以下DB)”があります。このファイルにはA〜M列セルの13列の情報があり品目は10,000行に上ります。この資料を構築する際に、急務だったため、マクロ等予備知識が無かったものは使用せず、主にVLOOKUP関数を使用し表記させるように組立をしました。
ある程度情報共有を出来ていたと思っていたのですが近頃問題が発生しました。
今までDBの値をランダムに書き換えていたのですが、その値が見る人によっては
書き換え前の値が表記されていたのです。
DBを書き換えする人は2〜3人の従事者のみで、この人たちはDBファイルを開いた状態でリンク先の各ファイルにアクセスするため、DBの値は常に最新の情報を見ることができます。しかしDBを開いていない場合は書き換え前の値が表記されています。
他に閲覧のみでリンクファイルを開く人も同じく書き換え前の値が表記されており、最新の値を皆が閲覧するにはどうすればいいのか分かりません。
リンクファイルを開いた時にデータの更新をするかしないかといったウインドウが出てきますが閲覧者は通常更新をしないをクリックし閲覧します。リンクファイルにはワークシートが多いもので50枚くらい入っているものもあり、先程述べたように情報が13列に及びますので更新するをクリックした場合はウインドウの左下に更新メーターが表記され、リンクの読み込みにとても長い時間を要します。
この更新可否のウインドウとファイル上段の、表字⇒リンクの設定のウインドウがこの
問題解決に関わるものだと思いますが、決まった使い方を知りません。
現状、更新した情報を皆が同じものを閲覧しようとする場合は、リンクファイルの個々のワークシートの保護を解除して、リンクの設定を開き、値の更新(もしくはリンク元の変更を行い、再度同じリンク元を選択する⇒なぜならリンク元の“状態”の欄が“不明”となっているからです。)を行い、再度個々のワークシートに保護をかけるというものすごく煩雑なものです。DBの値は例えば商品原価のようなもので昨今は変動が激しく頻繁に行うものですが、その都度上で述べたような作業を行っていては、その手間は計り知れません。たぶんこのような回りくどいことをしなくとも解決方法があるのでは
と思います。マスターの皆様、教えてください。
◇疑問点◇
●なぜDBファイルを開いた人にだけ最新の情報が閲覧できるのか?
●閲覧者は常に最新の情報を閲覧できるようにしたい。
●DBの値を書き換えた時は多少に関わらず“値の更新”を行わなければならないのか?
 また複数のリンクファイルに値を書き換えた情報を使用しているときは、全てのリン クファイルを開き更新していかなければならないのか?
●各リンクファイルの容量を分割したほうが良いのか?(読み込み量が多いため?)
宜しくお願いします。


 >●なぜDBファイルを開いた人にだけ最新の情報が閲覧できるのか?
  DBが開かれると、自動更新されることになっています。(仕様だと思います)

 >●閲覧者は常に最新の情報を閲覧できるようにしたい。
  DBのデータ更新者は、新しいデータを入力したらファイルを上書き保存すること。
  閲覧者は、その後に「値の更新」を行うこと。

 >●DBの値を書き換えた時は多少に関わらず“値の更新”を行わなければならないのか?
   少なければ必要が無くなる、などと云うことはあり得ません。
  (使う人が、少しの変更なら違っていても、運用上気にしない、と云うのでしたら別ですが)

 >また複数のリンクファイルに値を書き換えた情報を使用しているときは、
 >全てのリンクファイルを開き更新していかなければならないのか?
  リンクチェーンを辿って行ったとすると、
  その一番の大元ファイルの次のファイルから更新が必要です。
  (大元ファイルだけは、開く必要はありません)

 >●各リンクファイルの容量を分割したほうが良いのか?(読み込み量が多いため?)
 どんな複雑なリンク状態なのか、どんなデータ量なのか、によりますので、一概に云えません。

 (半平太) 2009/12/17 18:57

半平太さん
コメントありがとうございますっ

DBを開かなくとも更新された情報を閲覧することができる“仕様”はあるのでしょうか?
DBは重要資料なので特定の人のみが開くようにしてありまして。。。

DBデータ更新者は都度ファイルの上書き保存をしておりますので問題ありません。
ということはやはり“値の更新”を行わないと駄目ということですね。
できるだけ簡易に更新作業をしたいと思っているのですが。。。
ところで大元ファイルというのはワタシの話からするとどれに当たるのでしょう?

この情報は主に3000〜4000品目ほどある原価台帳の書式に表記させております。
コード番号を打ち込めば、商品名/値段/仕入先/発注点/発注ロット。。。等々
A〜Mの13列分の情報が表記されるようになっています。
ひとつのワークシートにおおよそ350ほどのリンクを貼ってあります。

(take)


 >DBを開かなくとも更新された情報を閲覧することができる“仕様”はあるのでしょうか?
 "値の更新"を実行するしかありません。

 >DBデータ更新者は都度ファイルの上書き保存をしておりますので問題ありません。
 >ということはやはり“値の更新”を行わないと駄目ということですね。
 その通りです。

 >ところで大元ファイルというのはワタシの話からするとどれに当たるのでしょう?
 複雑なリンクでなければ、「DB」がそれに当たります。

 >この情報は主に3000〜4000品目ほどある原価台帳の書式に表記させております。
 >コード番号を打ち込めば、商品名/値段/仕入先/発注点/発注ロット。。。等々
 >A〜Mの13列分の情報が表記されるようになっています。
 >ひとつのワークシートにおおよそ350ほどのリンクを貼ってあります。

 単に、それだけのリンク複雑度であれば、Vlookupを多用し過ぎているだけと思われます。

 DBの何行目が該当するかは、一回チェックすれば足りるので、
 それをMatchで算出し、結果をどこか1つのセル(ヘルパー)に表示させておけば、
 各列のデータ表示は、Index(DB範囲、ヘルパー参照) で引っ張ってこれるので
 更新時間はずーっと短縮されると思います。

 また、DBを昇順に並べ替えられるなら、検索の型を完全一致型にしないで高速化を図る方法もあります。
 ここを覘いて見てください。
 ↓
 Excel 2007 におけるパフォーマンスの改善 
http://msdn.microsoft.com/ja-jp/library/aa730921.aspx
 以下の項目が参考になると思います。
  ※ 検索の高速化
  ※ 並べ替えられたデータに見つからない値がある場合

 (半平太) 2009/12/18 18:54

コメント返信:

[ 一覧(最新更新順) ]


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