按条件列出符合条件的4位数
条件:(同时满足)数字范围1000-99994位数中的每位数字必须是1,2,3,4 (2340,1238算作不符合条件)4位数中不能有重复的数字(比如1123,2333算作不符合条件)
要求: 用函数在A1开始下拉得到所有符合条件的24个4位数
A2
=MATCH(4,MMULT(--ISNUMBER(FIND({1,2,3,4},A1+9*ROW($1:$111))),{1;1;1;1}),)*9+A1 A1=IFERROR(1233+SMALL(IF(MMULT(MID(1233+ROW($1:$3088),{1,2,3,4},1)^7,{1;1;1;1})=18700,ROW($1:$3088)),ROW(A1)),"")
数组 下拉 很简单嘛
=SMALL(IF(MMULT(1-ISERR(FIND({1,2,3,4},ROW($1000:$5000))),{1;1;1;1})=4,ROW($1000:$5000)),ROW(A1)) 版主的公式数学味道很浓啊哈哈 小时候看到的, 二组若干正数, 若七次方的和相等, 则这二组数的组成必相同, 不过证明忘了 多谢以上几位指教。 我也是正在复习小学和中学的数学,见到一个问题很好奇能否用Excel解决。 抄一遍 梅大佬的
=IFERROR(SMALL(IF(MMULT(1-ISERR(FIND({1,2,3,4},ROW($1234:$4321))),{1;1;1;1})=4,ROW($1234:$4321)),ROW(A1)),"")
2013版
IFERROR(SMALL(IF(MMULT(1-ISERR(SEARCH({0,"1*1","2*2","3*3","4*4"},BASE(ROW($194:$586),5))),{1;1;1;1;1})=0,--BASE(ROW($194:$586),5)),ROW(A1)),"") 有没有不用MMULT的方法?? A1=1234
A2,数组公式下拉
=LEFT(VLOOKUP("*1*2*3*4*",REPT(A1+ROW($1:$78)*9,4),1,),4)