none
Excelテーブルの構造化参照について RRS feed

  • 質問

  • Excelのテーブルを使用しています。

    この表には、集計行を設けており、その集計行をテーブル外から参照しました。

    内容は以下の様な感じになりました。

    =テーブル[[#集計],[6/1(土)]]-D25

    このセルを右にコピーすると、テーブル[[#集計],[6/1(土)]]の部分がそのままになってしまいます。

    希望する動作としては、テーブル[[#集計],[6/2(日)]]の様に右の列を参照してもらいたいのです。いちいちこの列名を手で修正しないといけないので、

    あきらめて、従来の=D2-D25の形式で入力してコピーして使っています。何かもっと良い方法があれば教えてください。

    2019年6月11日 4:38

すべての返信

  • マクロ機能でもセルに数式を記述することができます。

    最小限の工数にするのならば、コマンドボタンを一つだけ設置してマクロの登録でコードを記述する方法があります。

    特定のセルへ数式を入力するコーディングをされる場合のもっとも簡単な例を下にご参考までに書いておきます。

    Range("A1") = "=Left(""Simple"",1)"  ’’サンプルコードは左の一文だけです。

    上記の例ではセルに直接、=Left("Simple",1) と書くのと同じ結果が得られます。

    多くのセルを対象に、規則性のある(本ケースでは日付だけ異なる)数式を代入する方法ですが、

    あらかじめ変数を宣言したうえで、For 文やネストなどを使って繰り返し処理を行なわせましょう。

    一回の処理ごとに書き出し先や書き出し内容の変更を繰り返させれば可能です。

    開発タブが有効になっていなくてコマンドボタンを設置できない場合は、

    まずは開発タブを有効にする下準備をしてからお試しください。


    • 回答の候補に設定 N Miyazaki 2019年6月12日 5:03
    • 編集済み N Miyazaki 2019年6月12日 5:05
    2019年6月12日 5:00