Excelの名前付き範囲内のセルを参照するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/2431381

  •  19-09-2019
  •  | 
  •  

質問

例えば。A10 ~ A20 を Age と名付けましたが、A14 と同じ Age[5] を取得するにはどうすればよいですか。

「=A14」と書くこともできますが、「=Age$5」などと書きたかったのです。

役に立ちましたか?

解決

あなたはExcelのIndex機能を使用することができます:

=INDEX(Age, 5)

他のヒント

「同じ列に複数のセルの両端に印加される/? 『足を引っ張られます。

は、』相対的選択で、この作品を作るための方法があるかどう式をすることができるように、あなたは、知っています」

このような選択に対しては、単にINDEX式の列番号のインデックス式と列式で行番号の行の数式を使用するために。 ここで、これは明確にするためには、一例です。

=INDEX(named_range,ROW(A1),COLUMN(A1))

という名前の範囲は単にA1で行と参照セルの列番号によって範囲のインデックスをこの式を開始し、その基準は相対的なものであるので、あなたがダウンまたは作成することが可能になる側にセルをドラッグするときに変化すると仮定すると細胞の全配列容易

これを行うには、いくつかの異なる方法があります。

1) 名前付き範囲を使用して Excel テーブルを模倣する

あなたの例では、範囲に名前を付けました A10:A20 "年"。その範囲内のセルをどのように参照したいかに応じて、(@Alex Pが書いたように)次のいずれかを使用できます =INDEX(Age, 5) または、数式と同じ行にある範囲「年齢」内のセルを参照したい場合は、次のように使用します。

=INDEX(Age, ROW()-ROW(Age)+1)

これは Excel テーブルに組み込まれた相対参照機能を模倣していますが、テーブルを使用したくない場合の代替手段です。

名前付き範囲が列全体の場合、式は次のように簡略化されます。

=INDEX(Age, ROW())

2) Excel テーブルを使用する

あるいは、これを Excel テーブルとして設定し、年齢列のヘッダー タイトルとして「年齢」と入力すると、年齢列の右側の列の数式で次のような数式を使用できます。

=[@[Age]]

私は、すべての行が同一であり、通常、同じ行の他のセルを参照するシートにこのようなものを使用して喜んでてきた - しかし、式が複雑になると、他の列への参照が読みにくく得ます。 私は私ができるINDEX(Sales;row())としてそれを指し、「売上」という名前の例列Aのために、他の回答に与えられたトリックを試してみましたが、私は私の好みのために少し長すぎるそれを発見します。

ただ自動的に対応する行を取得し、エクセル(ここでは2010)

-

しかし、この特定のケースでは、私は単独でSalesを使用して同じように良好に機能することを見出しました。

あまりにも他の範囲で動作するように表示されます。たとえばのは、私はちょうどA2:A11Salesを使用することができますし、それは10件の異なる結果を配って、同じ行の値を使用します。私は=Sales*0.21に名前を付けるB2:11の値を持っているとしましょう。

---編集します:

私はまた、このページの素敵なトリックを見つけました:名前の範囲も相対することができます。使用時になるように、あなたの値「年齢」は列にAであれば、あなたの元の質問に戻って、あなたが同じ行の数式でその値を使用していると仮定すると、あなたは、代わりに$ A $ 2の$ A2であるとして年齢を定義することができます例えばB5またはC5で、それが実際に$ A5を参照します。

(名前マネージャは常に現在選択されているセルに対する基準を示します)

B20のB10があなたの名前付き範囲年齢になるように、

左に列を追加します。 A20に名前などのAgeIndexを範囲A10を与えるA10 = 1、A11 = 2、... A20 = 11となるようにA20にA10を設定します。第五要素その後、配列数式を使用して見つけることができる「= SUM(年齢*(1 *(AgeIndex = 5))」。それはあなたが+シフト+ CTRLを押してそれを動作させるに復帰する必要があります、配列数式だとし、ただ戻らない。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top