给你段代码,刚写的,还热乎着呢。
代码效果:只要在B2至B300这个区域内的任意一个单元格上单击,D2、F2、D3、F3、D4、F4的结果都会自动重算。
点开发工具---点Visual Basic---点表名---右侧输入代码---关闭Visual Basic。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)D2单元格公式:=COUNTIF(B6:B300,"上午")
D3单元格公式:=MAX(FREQUENCY(IF(B6:B300="上午",ROW(A6:A300)),IF(B6:B300<>"上午",ROW(A6:A300))))
然后选定D3单元格后鼠标点击进去上面的公示栏,然后按Ctrl+Shift+Enter/回车三键(按住Ctrl+Shift两键,然后按Enter/回车),直至公式首尾出现{ }
D4单元格公式:=IF(LOOKUP(1,0/(B6:B300<>""),B6:B300)="下午",0,LOOKUP(1,0/(FREQUENCY(IF(B6:B300="上午",ROW(A6:A300)),IF(B6:B300<>"上午",ROW(A6:A300)))<>0),FREQUENCY(IF(B6:B300="上午",ROW(A6:A300)),IF(B6:B300<>"上午",ROW(A6:A300)))))
然后选定D4单元格后鼠标点击进去上面的公示栏,然后按Ctrl+Shift+Enter/回车三键(按住Ctrl+Shift两键,然后按Enter/回车),直至公式首尾出现{ }
E2:E4单元格公式可自行参考。
本回答被提问者采纳