如何删除除第一个和最后一个日期以外的所有重复日期。
请查看屏幕截图。
https://docs.giantswarm.io/guides/creating-your-own-admission-controller/
我想像D列那样做B列。
有可能吗?
谢谢。
答案 0 :(得分:1)
如果您的来源范围为B2:B30
,并且您产生的数据以D2
开头,请使用以下数组公式(在D2
中):
=CHOOSE(MOD((ROW()-ROW(D$2)),3)+1,IF(MIN(IF(DAY($B$2:$B$30)=INT((ROW()-ROW(D$2))/3)+1,$B$2:$B$30))=0,"",MIN(IF(DAY($B$2:$B$30)=INT((ROW()-ROW(D$2))/3)+1,$B$2:$B$30))),IF(MAX(IF(DAY($B$2:$B$30)=INT((ROW()-ROW(D$2))/3)+1,$B$2:$B$30))=0,"",MAX(IF(DAY($B$2:$B$30)=INT((ROW()-ROW(D$2))/3)+1,$B$2:$B$30))),"")
要将公式作为数组公式输入,必须将公式复制到公式栏并按住向左键Shift 并按 ENTER 。
结果公式将包含括号{},即如下所示:
{=CHOOSE(MOD((ROW()-ROW(D$2)),3)+1,IF(MIN(IF(DAY($B$2:$B$30)=INT((ROW()-ROW(D$2))/3)+1,$B$2:$B$30))=0,"",MIN(IF(DAY($B$2:$B$30)=INT((ROW()-ROW(D$2))/3)+1,$B$2:$B$30))),IF(MAX(IF(DAY($B$2:$B$30)=INT((ROW()-ROW(D$2))/3)+1,$B$2:$B$30))=0,"",MAX(IF(DAY($B$2:$B$30)=INT((ROW()-ROW(D$2))/3)+1,$B$2:$B$30))),"")}
的公式为几个公式的组合。
数组公式
=MIN(IF(DAY($B$2:$B$30)=INT((ROW()-ROW(D$2))/3)+1,$B$2:$B$30))
=MAX(IF(DAY($B$2:$B$30)=INT((ROW()-ROW(D$2))/3)+1,$B$2:$B$30))
<强>正常公式强>
=INT((ROW()-ROW(D$2))/3)+1
=MOD((ROW()-ROW(D$2)),3)+1
并最后CHOOSE式强>
=CHOOSE(MOD((ROW()-ROW(D$2)),3)+1,1,2,3)
将各种条件代替1、2和3:
MIN , MAX 和“” 。
答案 1 :(得分:0)
这是另一个变体(不是显式的数组公式)
=IFERROR(
CHOOSE(MOD(ROWS($1:3),3)+1,
AGGREGATE(15,6,B$2:B$30/(INT(B$2:B$30)=AGGREGATE(15,6,INT(B$2:B$30)/(INT(B$2:B$30)>D1),1)),1),
AGGREGATE(14,6,B$2:B$30/(INT(B$2:B$30)=AGGREGATE(15,6,INT(B$2:B$30)/(INT(B$2:B$30)>D1),1)),1),
""),
"")
但是因为我将日期与之前3行的日期进行比较(最初是在D1中),所以必须在D4中输入公式,而D1和D2必须留空。