发布网友 发布时间:2022-04-24 01:25
共2个回答
热心网友 时间:2023-10-18 08:59
假设你的数据在A2:A28和B2:B9,则
问题1,在C2输入公式:
=IF(ROW(A1)<=SUM(--(COUNTIF($B$2:$B$9,$A$2:$A$28)=0)),INDEX($A$2:$A$28,SMALL(IF(COUNTIF($B$2:$B$9,$A$2:$A$28),100,ROW($A$1:$A$27)),ROW(A1))),"")
向下复制。
问题2和3,可用同一个公式:
=IF(SMALL(IF(ISERROR((FIND(LEFT($D$1),$A$2:$A$28))*(FIND(RIGHT($D$1),$A$2:$A$28))),100,ROW($A$1:$A$27)),ROW(A1))<100,INDEX($A$2:$A$28,SMALL(IF(ISERROR((FIND(LEFT($D$1),$A$2:$A$28))*(FIND(RIGHT($D$1),$A$2:$A$28))),100,ROW($A$1:$A$27)),ROW(A1))),"")
注意:以上两个公式均为数组公式,即输入公式后不要按回车,而是按Ctrl+Shift+Enter。
另外如果数据在其他区域,则改变公式中的相应单元格引用部分,但是输入第一个公式时的row(A1)不能变;
如果行数大于100,则把公式中的100改成更大的数字,如1000。
如果想让公式变得简单,可以用定义公式,方法见我的blog:
http://hi.baidu.com/qdike/blog/item/b57999ee20d7b3292df53492.html
补充问题:
excel中,如果数字格式的单元格中前面输入0,则自动取消,方法是将单元格格式改为文本格式。
热心网友 时间:2023-10-18 08:59
这些问题都可以用VBA实现,具体不是很难,自己学一下!!
热心网友 时间:2023-10-18 08:59
假设你的数据在A2:A28和B2:B9,则
问题1,在C2输入公式:
=IF(ROW(A1)<=SUM(--(COUNTIF($B$2:$B$9,$A$2:$A$28)=0)),INDEX($A$2:$A$28,SMALL(IF(COUNTIF($B$2:$B$9,$A$2:$A$28),100,ROW($A$1:$A$27)),ROW(A1))),"")
向下复制。
问题2和3,可用同一个公式:
=IF(SMALL(IF(ISERROR((FIND(LEFT($D$1),$A$2:$A$28))*(FIND(RIGHT($D$1),$A$2:$A$28))),100,ROW($A$1:$A$27)),ROW(A1))<100,INDEX($A$2:$A$28,SMALL(IF(ISERROR((FIND(LEFT($D$1),$A$2:$A$28))*(FIND(RIGHT($D$1),$A$2:$A$28))),100,ROW($A$1:$A$27)),ROW(A1))),"")
注意:以上两个公式均为数组公式,即输入公式后不要按回车,而是按Ctrl+Shift+Enter。
另外如果数据在其他区域,则改变公式中的相应单元格引用部分,但是输入第一个公式时的row(A1)不能变;
如果行数大于100,则把公式中的100改成更大的数字,如1000。
如果想让公式变得简单,可以用定义公式,方法见我的blog:
http://hi.baidu.com/qdike/blog/item/b57999ee20d7b3292df53492.html
补充问题:
excel中,如果数字格式的单元格中前面输入0,则自动取消,方法是将单元格格式改为文本格式。
热心网友 时间:2023-10-18 08:59
这些问题都可以用VBA实现,具体不是很难,自己学一下!!