首先,我知道我可以用一些VBA来完成这个任务,但我不想这样做。一直在搜索网页,但还没有找到解决办法。
因此,在excel中,我使用了VLookup-函数(我认为excel不是英文的),如下所示:
=LETARAD("key";A2:E65;5;0)这个很好用。
现在,我想要的是根据工作日期函数返回的内容,使列部件动态化。就像这样:
=LETARAD("key";ColumnIndex(WorkDay("2016-11-30")*7)2:ColumnIndex(WorkDay("2016-11-30")*7)65;5;0)虽然我无法做到这一点。有人有什么建议吗?)
解决方案更新:
这是我的解决方案的简化版本。比方说,我有一张绝妙的折页:
<table border="1">
<tr><td></td><td>A</td><td>B</td><td>C</td><td>D</td><td>E</td></tr>
<tr><td>1</td><td>Keys1</td><td>Val</td><td></td><td>Keys2</td><td>Val</td></tr>
<tr><td>2</td><td>1a</td><td>-5</td><td></td><td>2a</td><td>-3</td></tr>
<tr><td>3</td><td>1b</td><td>-16</td><td></td><td>2b</td><td>82</td></tr>
<tr><td>4</td><td>1b</td><td>-19</td><td></td><td>2c</td><td>18</td></tr>
</table>
使用下面的函数,我可以收回我想要的值。
=VLOOKUP("key";INDEX(A2:E4;1;1+((WEEKDAY("2016-11-28")-1)*3)):INDEX(A2:E4;3;2+((WEEKDAY("2016-11-28")-1)*3));2;0)当然,键和工作日是动态的,每个工作日都有一定数量的键。这张纸只显示了两天。谢谢!
发布于 2016-12-01 13:48:07
在英语中,您可以使用INDEX函数引用单个列,因此
=INDEX(A1:C100,,3)参考文献C1:C100
因此,像这样的东西会起作用:
=VLOOKUP("Key",INDEX(A1:C100,,3),5,0)若要每次更改该列,只需使3动态
注意:在本例中,您需要将,更改为;
https://stackoverflow.com/questions/40912111
复制相似问题