如何根据 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获得值obs,具有底层公式="obs"&B2。我知道我可以像他一样修复列 a:,="obs"&$A2但如果我将其拖到右侧,C2也会获得值“obs3”(具有="obs"&$A2底层公式),而我需要的是="obs"&$A3,然后="obs"&$A4="obs"&$A5等等。

我究竟做错了什么?

答案1

你看过间接()公式?使用它,你可以输入类似

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

在单元格 B1 中将其复制到右侧。可能有更有效的方法,但这种方法可行。

答案2

为了将数据读取转换为横向读取,我使用了偏移量。

=OFFSET(Anchor_Cell,COLUMN(),0)

这将获取当前列,并使用偏移量将其转换为从锚点单元格向下移动的行数。如果需要,
可从数字中增加或减去COLUMN()

相关内容