質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%

Q&A

解決済

1回答

405閲覧

Excelで、ある列の数値の大きさによって、参照するセルを動的に切り替えるようにしたい

H.K2

総合スコア88

0グッド

1クリップ

投稿2021/12/12 01:13

編集2021/12/12 08:08

前提・実現したいこと

現在、Excelで、数式を計算するうえで、計算のパラメータを、ある列の数値の大きさによって切り替えたいと考えています。
パラメータは、ファイル、シートごとに異なるため、ネットで調べながら、該当シートの属するファイル名、シート名を
セルに表示することで、XLookUPとかを駆使して、実現できないかと考え、シートを作ってみました。(下記図参照)
イメージ説明

発生している問題・エラーメッセージ

ただ、あまりExcelについて詳しくなく、上図のように、y=ax+bの、[a]の部分をxの値によって動的に切り替える際に、
数式だけで実現する方法が思い浮かばず、難儀しています。(ワークシート関数は不慣れなので…python(xlwings)で、
UDFを作って実現しようかとも思いましたが、想定ユーザがpythonなにそれ?という方たちなので、
作ったとしても使われなくなる未来が容易に想像できてしまいます…。(VBAはかろうじて行けると思いますが、
数式だけしか使わない方々なので、VBAもちょっと嫌がられる可能性が…。))
可能であればExcelの機能(できれば数式で、どうしても難しい様であればVBA)で実現できたらと思い、質問させていただきます。よい解決方法などあればご教示いただけましたら幸甚です。

追記:
上の図の左側は、各ファイルの各シート(例として、AAA.xlsxのaaaシート)となり、
右側は、各ファイルに共通で用意した、パラメータ切り替え用のシート(例えば、「管理値一覧」シートという名称)
となります。各ファイルの各シートに対し、ファイル名シート名の組み合わせで、xの値に対し、ax+bの「a」を求めたい
というのが目的となります。

試したこと

該当するExcelのワークシート関数などについて調査した。

補足情報(FW/ツールのバージョンなど)

Excel(Office365(最新))

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Excel

1ベタですがこんな感じでどうでしょうか。 2=IFS(E2<=$J2,$F2,E2<=$K2,$G2,E2<=$L2,$H2,E2>$L2,$I2)

<追記>
力押しですがこんな感じでどうでしょうか。

Excel

1管理値一覧!J1 2 =$A:$A&$B:$B 3 4aaa!C1 5 =XMATCH($A$1&$B$1,管理値一覧!$J:$J) 6 7aaa!G3 8 =INDEX(管理値一覧!$C:$F,$C$1,IFS($E3:$E12<=INDEX(管理値一覧!$G:$G,$C$1),1,$E3:$E12<=INDEX(管理値一覧!$H:$H,$C$1),2,$E3:$E12<=INDEX(管理値一覧!$I:$I,$C$1),3,TRUE,4)) 9

投稿2021/12/12 02:14

編集2021/12/12 08:54
jinoji

総合スコア4585

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

H.K2

2021/12/12 08:12

ご回答ありがとうございます。それぞれが単一シートで完結しているのであれば、上記のように IFSで問題ないように思いますがパラメータのシートは別となっており、ファイル名、シート名 ごとに使用するパラメータの行が異なります(図の右下側)。 説明が分かりにくかったので追記しました。申し訳ありません。 各ファイルの各シートにx,yの列があり、それぞれのファイルに共通して、「管理値一覧」のシートを用意して、そちらで、ファイル、シートごとのパラメータ閾値が変わるイメージです。 xlookupとIFSを組み合わせる、という形になればできるのかもしれないですが、 式がとても長くなると思うので、もう少し、良い解決策などあったりしますでしょうか。
jinoji

2021/12/12 08:22

管理値一覧シートはAAA.xlsxやBBB.xlsxとは別ファイルですか?
H.K2

2021/12/12 08:43

それぞれのファイルに同じものを入れています。
H.K2

2021/12/14 08:34 編集

ありがとうございます。状況に合わせてちょっと手直ししたらできるようになりました。(若干別の課題が出てきましたが、ちょっとそれは別の問題なので)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問