(Excel表如下图:从上到下G4-G7,再从H4-H7直到MP4-MP7中找出最后一个是X或V的数据值,填入MR4单元格。

注:如上图此时最后的值应为MO6单元格中的V,但是从MO6后还会接着填写数值,所以找出的真正的最后的值是一个变化的值。
图表有一点出入,原图MO,MP,MQ,MR,应为:BO,BP,BQ,BR.

第1个回答  2012-12-30
假设原数据为G4:BR7
在BS2中输入公式
=MAX(IF(ISERROR(CODE(G4:BR7)),0,IF(CODE(G4:BR7)>64,COLUMN(G4:BR4),0)))
在BS3中输入公式,数组公式,请同时按下shift+ctrl+enter三键结束
=MAX(IF(ISERROR(CODE(OFFSET(A4,,BS2-1,4,))),0,IF(CODE(OFFSET(A4,,BS2-1,4,))>64,ROW(A1:A4),0))),数组公式,请同时按下shift+ctrl+enter三键结束
在要求得到结果的单元格(如BS4)中输入公式
=OFFSET(A4,BS3-1,BS2-1,,)
这样在BS4就能得到你要的结果。如果不想用辅助单元格的话把上面几个公式合起来,不过那样太难看了,具体的取值范围根据实际情况进行修改。
我这公式不论是什么字母都能取到最大列号中的最大行号字母
第2个回答  2012-12-29
在MR4输入:
=LOOKUP(1,0/((OFFSET($A$4,,MAX(IF((G$4:MP$7="V")+(G$4:MP$7="X"),COLUMN(G$4:MP$7),))-1,4)="V")+(OFFSET($A$4,,MAX(IF((G$4:MP$7="V")+(G$4:MP$7="X"),COLUMN(G$4:MP$7),))-1,4)="X")),OFFSET($A$4,,MAX(IF((G$4:MP$7="V")+(G$4:MP$7="X"),COLUMN(G$4:MP$7),))-1,4))
数组公式,按ctrl+shift+enter 三键结束追问

不好意思,表格有点出入,原图MO,MP,MQ,MR,应为:BO,BP,BQ,BR.

追答

在BR4输入:
=LOOKUP(1,0/((OFFSET(A4,,MAX(IF((G4:BP7="V")+(G4:BP7="X"),COLUMN(G4:BP7),))-1,4)="V")+(OFFSET(A4,,MAX(IF((G4:BP7="V")+(G4:BP7="X"),COLUMN(G4:BP7),))-1,4)="X")),OFFSET(A4,,MAX(IF((G4:BP7="V")+(G4:BP7="X"),COLUMN(G4:BP7),))-1,4))
数组公式,按ctrl+shift+enter 三键结束

追问

你好,你有实验过吗?你的公式按三键后提示:在合并单元格中数组公式无效。

追答

你先把BR4拆分,即再点击一次工具栏上的合并按钮,然后把上面公式复制进BR4,按CTRL+SHIFT+ENTER三键结束
再把BR4:BR7合并即可.

本回答被提问者采纳
第3个回答  2012-12-29
你想返回的是单元格的地址码?追问

是单元格填入的值,MR4应显示:X或V

追答

你的意思是MR4里边不是填写X,就是填写V?

追问

是的

追答

实验的差不多了,还得问你一下,每一列至少有一个X或者V吗?有没有只有数字128的时候?

第4个回答  2012-12-29
你求表中X或V的个数还是什么?追问

找出最后一个是X或V的数据,填入MR4单元格,MR4显示:X或V

相似回答