列 A の値に基づいて列ヘッダー (列 B から X) に名前を付けるにはどうすればよいでしょうか?

列 A の値に基づいて列ヘッダー (列 B から X) に名前を付けるにはどうすればよいでしょうか?

次の Excel ワークシートを検討してください。

  | ... | H      | I    | J
--+-----+--------+------+-----
1 | ... | obsDay | obs3 | obs4  ...etc
--+-----+--------+------+-----
2 | ... | 3      |      |     
--+-----+--------+------+-----
3 | ... | 4      |      |     
--+-----+--------+------+-----
4 | ... | 8      |      |     
--+-----+--------+------+-----

A2にはA148147個のobsDay値があります。各値ごとに別の列を作成する必要があります。セルの値B1C1' are respcetively there because of the formulas="obs"&A2 and="obs"&A3`

私の質問は、数式を他の 145 列すべてにドラッグできないということです。 の数式をB1右にドラッグすると、基礎となる数式 とともにC1値 が取得されます。 列 a を次のように修正できることはわかっていますが、それを右にドラッグすると、値 'obs3' も取得されます (基礎となる数式あり)。 にする必要がある場合は、、などになります。obs="obs"&B2="obs"&$A2C2="obs"&$A2="obs"&$A3="obs"&$A4="obs"&$A5

何が間違っているのでしょうか?

答え1

あなたは調べたことがありますか?間接()式は?それを使えば、次のようなものを書くことができます

="obs"&INDIRECT("A"&COLUMN(A1)+1)

セル B1 に入力し、右にコピーします。おそらくもっと効率的な方法があるでしょうが、これで十分でしょう。

答え2

データの読み取りを横方向に変換するには、オフセットを使用します。

=OFFSET(Anchor_Cell,COLUMN(),0)

これは現在の列を取得し、オフセットを使用して、それをアンカーセルから下に行く行数に変換します。必要に応じて
、その数を加算または減算します。COLUMN()

関連情報