我有一个满满的表格,行中的第一个单元格是价格,列标题是从1到10的数字。如下所示:
1 2 3 4 5 6 ..
1$ 1g 9g 7g
2$ 4g 6g 8g 0g 0g 3g
3$ 4g 6g 8g 0g 0g 3g
4$ 4g 6g 8g 0g 0g 3g
.
.
我需要在这张表格中用excel写一个小算法,它采用2个参数( param1,param2) param1来过滤一些列,参数2来过滤一些行,然后选择所需的适当权重。我不是问算法,而是问我如何在excel中做,我的办公技能是不存在的,所以如果我需要宏,你能给我一个很好的链接,解释宏指令读取单元格的范围和诸如此类的事情。
发布于 2012-10-02 20:39:35
您不需要VBA,但可以使用公式:
=INDEX($B$2:$G$5,MATCH(H6,INDEX(A2:A5,1,),0),MATCH(I6,INDEX(B1:H1,1,),0))
INDEX
函数将接受INDEX(Range, row, column)
的输入并返回值。因此,我们希望找到输入行和列,这是通过MATCH
完成的。
MATCH(H6,INDEX(A2:A5,1,),0)
查找H6
中包含的值,并给出A2:A5.
范围内的索引,因此,如果H6
中包含的值为3$
,则此函数将返回3,表明您的目标值在第三行。
类似地,对于以下内容
MATCH(I6,INDEX(B1:H1,1,),0)
您正在I6
中查找一个值,但现在正在搜索列标题。因此,如果I6
=4,它将返回值4(因为它是第四列)。
把它们放在一起,现在就有了一个函数,它是
=INDEX($B$2:$G$5, 3, 4)
它给出了表中Row =3和Column =4的值,这是由$B$2:$G$5
给出的,或者是您的lokup值。
发布于 2012-10-02 21:29:25
这里有一个非常全面的宏入门链接:http://dmcritchie.mvps.org/excel/getstarted.htm
如果您的过程是非常有条件的,那么创建宏可能会更好,并且知道如何编写宏将是一项非常有价值的技能。
一旦你尝试了一些东西并写了一些代码,你可以在这里发布它,我们可以在它不起作用的领域帮助你,或者如果你不知道如何在一个领域开始,你可以问另一个合适的问题。
https://stackoverflow.com/questions/12690106
复制相似问题