行人工移位公式

时间:2015-04-23 06:16:26

标签: excel excel-formula row formula

我已经这样做了几个星期但是无济于事,我会给你上下文,以便更容易理解:我有几套仓库物资代码从最小到最小排序最大的以及他们需要交付到车间进行处理的时间以及每个特定时间段所需的托盘数量,以下是它的外观:

Mat. Code   Time      Pallets
65504606    07:30:00    2
65504606    10:30:00    1
65504606    13:30:00    2
65504606    16:30:00    1
65504606    19:30:00    2
65504606    22:30:00    1
65504606    01:30:00    2
65504606    04:30:00    1

我将此数据与另一个工作表进行匹配,其中包含有关每个托盘存储位置的信息,因此我需要在时间列中移动值,以便按时交付特定托盘,这里是#s我喜欢它的样子:

Mat. Code   location    Time     Cell shift
65504606    91-04-03/1  7 30           0
65504606    76-13-03/1  7 30          -1
65504606    97-19-03/1  10 30         -1
65504606    97-16-03/3  13 30         -1
65504606    76-19-02/1  13 30         -2
65504606    97-18-03/1  16 30         -2
65504606    97-18-03/2  19 30         -2
65504606    88-07-02/1  19 30         -3

我想我可以通过添加另一列来人工移动细胞(细胞移位 - 它必须是负片,因为片材中我匹配的行数较小,加上我使用INDEX - 小公式组合用于匹配每组代码的每个连续行),但我尝试的所有公式组合都给了我错误的数字。托盘的数量可以在0到9之间变化,并且没有特定的顺序。

我知道很多令人困惑的信息,但如果你想出一个合适的公式,你会真的帮助我。提前谢谢!

1 个答案:

答案 0 :(得分:0)

你想要做的是在限制范围内寻找一些东西 我所做的是限制范围,所以我可以使用一个简单的VLOOKUP OP要求的是在另一个公式中使用的额外输入。

=VLOOKUP(C2,OFFSET(YourFirstTableWithPalletNums!$A$1,MATCH(A2,YourFirstTableWithPalletNums!$A:$A,0)-1,1,COUNTIFS(YourFirstTableWithPalletNums!$A:$A,A2),2),2,FALSE)

P.S。仅在您查找的时间值实际上是时间值而不是问题暗示的字符串时才有效。

编辑:

=ROW(OFFSET(YourFirstTableWithPalletNums!$A$1,MATCH(WhereYouLookUpFrom!$C2,OFFSET(YourFirstTableWithPalletNums!$A$1,MATCH($A2,YourFirstTableWithPalletNums!$A:$A,0)-1,1,COUNTIFS(YourFirstTableWithPalletNums!$A:$A,$A2)),0),1))-ROW()

然后我们还需要一个班次,然后选择适当的行(在这种情况下我们仍然使用范围操作)。添加到以前上传的文件后,它可以很好地工作。