自动循环排列Excel表格公式函数怎么写?

发布网友 发布时间:2022-04-23 22:28

我来回答

5个回答

热心网友 时间:2022-06-06 01:16

展开3全部

如图,B4单元格为手动输入内容,C4单元格公式为

=INDEX($J:$J,IF(MOD((MATCH($B$4,$J:$J,0)+5*(COLUMN(B:B)-1)+ROW(1:1)-1),COUNTA($J:$J)),MOD(MATCH($B$4,$J:$J,0)+5*(COLUMN(B:B)-1)+ROW(1:1)-1,COUNTA($J:$J)),COUNTA($J:$J)))

将C4单元格公式复制到其他空白单元格即可。


你说的基本能够实现,但J列有空白格就自动跳过选择下一项这个做不到。。。而且想来想去J列也必要留空白格吧?

热心网友 时间:2022-06-06 01:17

根据你的意思,如果用if语句的话,很难实现,但是你的公式中的循环有个规律,就是倒着数(即从A25到A2的内容依次排列)第一个不为0的单元格减去A2即所得单元格,但是有个特列,就是如果倒着数第一个不为0的单元格如果是A2的话,那么就要输出A2内容,而不是输出第一个不为0的单元格(A2)减去A2成为0
所以,需要嵌套一个if语句,这样就得到如下公式:
=IF(MAX((A2:A25<>0)*ROW(A2:A25))=2,A2,INDIRECT("A"&MAX((A2:A25<>0)*ROW(A2:A25)))-A2)
将该公式复制到A26单元格里,然后按Ctrl+回车即可(这里是数组公式,需要同时按下Ctrl和回车键)
祝你成功!
对于你的补充,说没有成功,我专门试了一下,24个单元格依次输入数据,修改数据,结果都是对的,2003和2010结果一样,2007不清楚,应该也没问题,不知道是不是你的数据里有文本格式的单元格? 若有文本格式的单元格的话这个公式就有问题了,将公式里的A2:A24乘以数字1即可,即如下公式:
=IF(MAX((A1:A25*1<>0)*ROW(A1:A25))=2,A2,INDIRECT("A"&MAX((A1:A25*1<>0)*ROW(A1:A25)))-A2)
对于再次补充,百分比应该问题不大,最主要的是内容里不要出现文字,MAX函数在这里就是取最大值A1:A25*1<>0的意思是在A1:A25区域中的每个单元格不为0的时候返回1值,否则返回0值,然后该区域返回的这些值分别和对应单元格的行标相乘,如果返回值是0,那么乘以行标结果仍然是0,如果返回值是1,那么相乘结果为行标号,MAX((A1:A25*1<>0)*ROW(A1:A25))意思即为对对应区域的不为0的单元格行号取最大值,再通过indirect函数返回对应的单元格内的数据,然后再减去A2的数值
祝你成功!
希望能解决您的问题。

热心网友 时间:2022-06-06 01:17

在Excel中如何实现循环效果呢?虽然Excel是专业级数据处理软件,但是在循环方面却显得很勉强,尤其对于初学者而言,对于循环的实现更是无从下手,那么今天学习啦就教大家在Excel中实现循环的操作方法。

  Excel中实现循环的操作方法
  利用迭代计算实现循环。

  1、在使用Excel过程中,我们可能会出现一种情况,就是单元格有时会对本身进行引用,即形如在B2单元格中输入“=B2+1”之类的公式即为一种循环引用自身的行为。为了避免死循环的产生,就出现了迭代策略。

  2、其实我们完成可以利用该迭代功能实现我们想要的效果。例如我们想实现“1到10的和累加运算”。可通过以下方法实现。点击“Office按钮”->“Excel选项”按钮。

excel函数如何实现循环
  3、在打开的“Excel选项”窗口中,切换至“公式”选项卡,勾选“启用迭代计算”项,在“最多迭代次数”输入框中输入“101”,最后点击“确定”完成设置。

excel函数如何实现循环
  4、在如果所示的“自变量”单元格“A2”中输入公式“=IF(A2>=100,0,A2+1)”并按回车键。

excel函数如何实现循环
  5、接着在“求和”单元格“B2”中输入公式“=B2*A2”并按回车完成输入。

excel函数如何实现循环
  6、最后就可以看到输出结果“5050”,即1到100累计和为5050.

excel函数如何实现循环
  利用数组公式实现循环运算。

  1、数组公式实现了对循环的强有力支持,在此仍然以“1至100累加和”为例,在任意单元格中输入公式“=SUM(ROW(1:100))”。

excel函数如何实现循环
  2、接着同时按下“Ctrl+shift+Enter”,就可以看到结果啦,而且由于是数组公式,因此公式最外面被加上花括号。

excel函数如何实现循环
  利用VBA编辑实现循环计算。

  1、切换至“开发工具”选项卡,点击“Visual Basic”按钮进入VBA编辑环境(或按键盘快捷组合键“Alt+F11”)。

excel函数如何实现循环
  2、右击“Microsoft Excel 对象”,从弹出的菜单中选择“插入”->“模块”项

热心网友 时间:2022-06-06 01:18

b4=indirect("j"&if(mod(row(a1),counta(j:j))=0,counta(j:j),mod(row(a1),counta(j:j))))
c4=indirect("j"&if(mod(row(a6),counta(j:j))=0,counta(j:j),mod(row(a6),counta(j:j))))
d4=indirect("j"&if(mod(row(a11),counta(j:j))=0,counta(j:j),mod(row(a11),counta(j:j))))
……
把第4行公式下拉自动填充即可。

热心网友 时间:2022-06-06 01:18

就是B4单元格里输入一个右边的姓名,B到H列中的姓名就自动循环填写了,不论右边有几个姓名(包括中间的空格)都循环填写?

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com