Excel-Linkでのリンク領域数の削減方法
質問
Excel-Linkで、シート上に、金額、率、物量などの行(あるいは列)が混在し、行(列)ごとにデータ取得条件(表示単位、有効小数桁、端数処理、符号処理など)が異なるため、リンク領域を多数設定しなければならない。設定すべきリンク領域の数を削減することはできないでしょうか
回答
以下は、金額、率、物量などが行方向に混在するケースを想定して記述しますが、列方向に混在するケースも同様に対応できます
解決策1. リンク領域を重ねるアプローチ
リンク領域は重ねることができ、かつ、行キーや列のキーが指定されていない行や列はスキップされるという仕様を活かして対応するアプローチです:
-
リンク領域は行ごとに細分化せず、データを取得したい単一のセル範囲に、データ取得条件の違いに応じて「金額領域」「率領域」などのリンク領域を重ねて設定します
-
上記各リンク領域は、行キーについて、少なくともひとつ、他のリンク領域と違う列を参照するように設定します。たとえば、行方向に勘定科目が並ぶ場合は、金額用の勘定科目ラベルの列と率用の勘定科目ラベルの列を別に設けます。上述した「金額領域」は前者の列を参照し、「率領域」は後者の列を参照するようにします
-
各行に、重ねられたリンク領域のいずれを適用するかを判断し、そのリンク領域用の行キー列だけにキー(上述の例では勘定科目ラベル)を設定します
Excel-Link のデータ取得処理やデータ反映処理では、行キーが空白の行は単にスキップするので、上記の方法によれば、リンク領域の数を抑制しながら、各行を望ましい金額や率に対応づけることができます