- 締切済み
複数シートに跨る数式参照について
現在、1つのファイルにAシート、Bシートが存在します。 Aシートは、Bシートから値を参照し、数式、条件付き書式、 VBAにて作成されているシートになります。 Bシートにはデータが格納されています。 今回、新しくシートが4つ増えます。(C,D,E,Fとします) 新シートの役割としては、Bシートと同じくデータが登録されます。 そこで質問なのですが、Aシートで全てのシート(B,C,D,E,F)の データを参照をするにあたり、数式を簡単に設定する方法があるか知りたいです。 B,C,D,E,Fシートは、フォーマットが違うため、同じ項目を参照するのでも Bシートでは、H列を参照。Cシートでは、I列を参照など条件が変わるため シート名を覚えておく方法では、うまくいかず、結局数式でIF ELSEIF と 数式を作成する必要があり、参照数も多いためとても手間になります。 【条件】 ・始めにB~Fのどのシートを使用するか選択をします。 選択をしたシート名等は格納しておけます。 ・VBAは使用可能です。 ・参照数は500~1000セル程度。 ・できるだけ後からメンテしやすい形にしたい。 ・条件付き書式はAシートのみで完結しているため、影響はないと思います。 最悪、Aシートを5ケース分作成し、使用シートを選択時にシートの表示・非表示を 切り替えるしかないと今は、考えています。 知恵をお貸し頂ければと思います。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- GOCHISOUda
- ベストアンサー率34% (50/144)
回答No.4
- GOCHISOUda
- ベストアンサー率34% (50/144)
回答No.3
- TAKA_R
- ベストアンサー率32% (26/79)
回答No.2
- GOCHISOUda
- ベストアンサー率34% (50/144)
回答No.1
お礼
回答ありがとうございました。 恐らくですが、No.1のほうが私の望む回答として近いです。 私の説明が分かり難いのが問題だと思いますが下記例を参考して下さい。 ・Aシートを作成するのに対し、参照するシートが5シート(B,C,D,E,F)存在します。 ・始めに5シートからどのシートを参照するか選択させます。 例:商品名は、BシートではH6~H206まであります。 Cシートでは、I10~I210まであります。 Dシートでは、J50~J250まであります。 この場合に、AシートのA5~A205までを商品名の参照としたいときに どのように値を参照するのが効率の良い方法かを教えていただきたいです。 AシートのA5セルに下記のようにIf文を駆使すればできるのはわかりますが、 今後のメンテ等考えて、下記のようにはしたくありません。 If(選択シート=B,Bシート!H6,If(選択シート=C,Cシート!I10,If(選択シート=D,Dシート!J50・・・ 上記から、No.1の回答にあった、セル範囲に名前を付けて BシートのH6~H206、CシートのI10~I210に「商品名」という名前を付けて Aシートに「商品名」という名前で値が参照できる方法があるのであれば 教えて頂きたいです。