Excel:使用公式导出表列名

Excel:使用公式导出表列名,excel,Excel,我有一个叫做weather_data的Excel表格,每个月都有一列,例如一月、二月等 在另一张表中,我有一列列出了各种日期,在第二列中,我想使用公式从天气数据中提取数据。现在,第二张表如下所示: Date Avg_Temp Jun Jul Aug 例如,如果我想使用weather_data中的数据填写Avg_Temp下的第一个条目,该数据也有一列用于每个月,我可以手动输入=AVERAGEweather_data[Jun]。然而,我希望我可以使列引用Jun,在本例中,公式是从Dat

我有一个叫做weather_data的Excel表格,每个月都有一列,例如一月、二月等

在另一张表中,我有一列列出了各种日期,在第二列中,我想使用公式从天气数据中提取数据。现在,第二张表如下所示:

Date    Avg_Temp
Jun 
Jul 
Aug 
例如,如果我想使用weather_data中的数据填写Avg_Temp下的第一个条目,该数据也有一列用于每个月,我可以手动输入=AVERAGEweather_data[Jun]。然而,我希望我可以使列引用Jun,在本例中,公式是从Date列驱动的,因此我可以执行类似于=AVERAGEweather_data[A2]的操作并将其复制下来


这可能吗

假设您的天气表在第1列中从1月开始,在第12列中从12月开始,您可以在B2中执行类似的公式并复制:

=AVERAGE(INDEX(weather_data,0,MONTH("1/"&A2)))
这有两个有趣的部分。索引公式行参数中的0表示选择整个列。第1列中带有月份文本的munging 1/将其转换为可由month函数读取的日期,然后该函数返回月份的数字。这用作索引函数的列参数

编辑:这里有一个将汇总表A列中三个字母的月份缩写与表格标题中的缩写相匹配的缩写。这删除了表格仅包含订购月份的要求:

=AVERAGE(INDEX(weather_data,0,MATCH(A2,weather_data[#Headers],0)))

如果您想更进一步,只匹配表头的一部分,请考虑一下。

=1/june给出了值!在Excel中2010@Aprillion是的。但这不是公式中的内容。@Aprillion,这很酷,不是吗?不久前我在Contextures博客上读到了这篇文章,它总是需要一段时间才能记住它是如何工作的。谢谢道格!我还没有尝试过这一点,但从你发布的内容来看,我认为这并没有利用最新Excel 2007+版本的表功能中的列名。我的问题中描述的天气数据是这样格式化的。因此,我认为如果我使用您的方法,然后在weather_数据的某个地方添加一个新列,这将不起作用,因为您基本上是使用MONTH1/june推导硬偏移量。听起来对吗?再次感谢,这是真的。我将添加一个选项。