关于Excel中的排序问题,为什么排序后数值都变了?

例如 A B C D E
编号 姓名 应发工资 应扣数值 实际工资
01 a 442 20 422(=C3-D3)
02 b 362 22 340(=C4-D4)
03 c 300 30 270 ……
04 d 373 10 363 ……
就这样,当我选中整个区域要求按照 实际工资 升序排列时,排列出来的结果总是在变化。貌似和我最后实际工资的算法公式有关,因为不管怎么样,最后排列出来的结果实际工资总是等于应付工资减去应扣数值,所以,求帮忙?怎么才能按照实际工资排列呢?

第1个回答  2011-06-07
用Ctri键+·键(就是笔记本数字键1左边的那个键)检查一下C列或D列是否有其他公式。追问

恩,是有别的公式的,问题里我省略了,其实C与D列的值都是根据公式的来的。
那怎么办呢?不能有公式吗?

追答

如果C列或D列的公式是相对引用同一行不同列的数据,比如C1=A1、C2=A2、......,按列排序的时候,不会影响公式的结果;
如果C列或D列的公式是相对引用不同行不同列的数据,比如C1=A2、C2=A3、......,按列排序的时候,就会影响公式的结果。
我觉得你的实际工资列的计算有问题,应该是同一行相加减。如果你的公式没有错,那就把公式变成绝对应用(在编辑公式中的单元格引用的时候,用F4键将公式变成绝对引用),然后再排序就没有问题了。

本回答被提问者采纳
第2个回答  2011-06-07
从事例看可以肯定在排序操作有不当,如没有全部选择、没有区分有标题栏和没有标题栏,与算法分式没有关系。也许C、D列里有其它隐藏数据?在我的EXCEL2003中没有任何问题。追问

C、D列的值是根据公式得来的,有影响吗?

追答

很显然,你排序后由于C、D的源数据不同导致结果改变,只要改变C、D的数据地址引用为绝对方式或者取消其中的公式就好了

第3个回答  2011-06-06
只要单击哪列要排序的,再点工具栏上的排序按钮就行了追问

可是那样的话,最后值都改变了

追答

什么最后值?请说清楚

追问

就是 比如说最后01号的实际工资就不是422了,在我排序后就变成了另外一个值。
还有就是复制实际工资那一列到另外一个地方也是不能复制的,貌似真的和公式有问题,因为是相对引用,会跟着一直变,可是不知道怎么处理。

追答

排序时是一行一条数据跟着动的,不会乱了,要不就是误操作或是你只有选择一列了

第4个回答  2011-06-07
把三个文本放到A1:A3,在C1输入公式(按ctrl+shift+enter这三个键),下拉
1# 12
7# 14
6# 17

=SMALL(--LEFT($A$1:$A$3,1),ROW(1:3))&"#"&SMALL(--RIGHT($A$1:$A$3,2),ROW(1:3))
第5个回答  2011-06-06
这个问题没有问题。追问

什么叫做没有问题哇?

追答

公式中有 $ ?

追问

有的

追答

去掉。

相似回答