Excel テーブルのインスタンス化

Excel テーブルのインスタンス化

他のタスクのソースとして使用したい Excel テーブルがあります。このテーブルには、私の場合は名前と ID のリストと、その他のデータが含まれています。このテーブルは徐々に大きくなっており、すべてがそのまま残っています。このオブジェクトを別のワークブックでインスタンス化できれば最高です。VBA は使用できますが、最近はそれに飛び込むのをためらっています。もっとエレガントな代替案はありますか?

答え1

インスタンス化によって、テーブルを外部のブックにリンクするだけであれば、Excel のネイティブ データ ツールを使用すると簡単です。

  1. データをクリック
  2. データを取得
  3. ファイルから
  4. ワークブックから
  5. テーブルを含むソースブックを選択します

これにより、データ インポート インターフェイスが表示されます。ここから、ワークブック内のすべてのオブジェクトを確認できます。インポートするテーブル オブジェクトを選択します。[ロード] をクリックします。

これで接続されたクエリになりました。 を押すData > Refresh Allと、テーブルから最新のデータが取得されます。このようにして、テーブルはリンクされます。新しいワークブックで作業を行う前に、コピーを更新する必要があります。

答え2

必要なのは、リンクされた参照を呼び出すことです。

リンク参照を使用する 2 つの方法 (例はテーブル中心):

  1. リンクされた参照を手動で入力します:

    • 'workbook file name.xlsx'!Table_Name[#All]
    • ファイル名にスペースまたは特殊文字が含まれている場合は、一重引用符が必要です。
    • もっとテーブル演算子からMS: Excel テーブルで構造化参照を使用するページ。
  2. ソース範囲を選択します:

    • ソース ブックを開きます (それを参照する数式を作成する前に)。
    • 数式を作成し、リンクされた参照が必要なポイントで、
    • [表示] タブの [ウィンドウ] グループで、[ウィンドウの切り替え] をクリックします。
    • ソース ワークブックを選択し、シート タブに移動します。
    • 参照範囲セルを選択します。
    • 数式を完成させる作業に戻ります。

表全体を表示するには:

  • テーブルのインスタンスが必要な場合、
  • 表を収めるのに十分な大きさのセル範囲を選択します。
    • テーブルが大きくなる可能性がある場合は、この増大に対応できるように列や行を追加します。
    • IFERROR(<formula>,"")非表示にするには追加します#N/A
    • ソース テーブルが割り当てられたスペースを超えたかどうかを示す追加のガードを追加します。
  • 数式バーに入力する='Table Workbook Name.xlsx'!Table_Name[#All]か、入力して=から、上記の方法 1 を使用してテーブル全体を選択します。
  • これはCSE式なので、次のように使用しますCtrl- Shift-Enter

関連情報