中易网

EXCEL如何自动排序???

答案:4  悬赏:0  
解决时间 2021-04-28 03:04
  • 提问者网友:℡她的他i☆
  • 2021-04-27 08:01
如题:比如我要对一个学生成绩进行排序,事先我不知道谁的分大,我一个一个输入,当我输入一个数回车后,该学生的这一排或者列都和其他牌或列进行自动进行排列大小。这个功能如何实现??
最佳答案
  • 二级知识专家网友:不羁的心
  • 2021-04-27 09:17
自动功能只能用VBA宏来实现,在这个表格的底部标签上点鼠标右键,选“查看代码”,弹出VBA窗口,把下面代码粘贴进去就行了。
Private Sub Worksheet_Change(ByVal Target As Range)
'假设数据区域在A1:C100,对A列进行排序
Range("A1:C100").Sort Key1:=Range("A2"), Order1:=xlAscending, Header:= _
xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
SortMethod:=xlPinYin, DataOption1:=xlSortTextAsNumbers
End Sub
这样就能自动对A列排序 了
全部回答
  • 1楼网友:社会水太深
  • 2021-04-27 12:28
这用代码很好解决 在你的工作表名称那里——右键——查看代码 把下面的代码全部复制进去,就可以了 private sub worksheet_change(byval target as range) if target.column = 1 then '当a列的数据有改变时 i = selection.row j = selection.column columns("a:a").select '选中你要排序的列,这是a列,如是是abc三列,则换为"a:c" selection.sort key1:=range("a1"), order1:=xldescending, header:=xlguess, _ ordercustom:=1, matchcase:=false, orientation:=xltoptobottom, sortmethod _ :=xlpinyin, dataoption1:=xlsortnormal 'key1:=range("a1"), 表示用a列进行排序 cells(i, j).select end if end sub '这是你输入一个数,按回车后,自动排序,然后把光标移到下一个单元格
  • 2楼网友:最后战士
  • 2021-04-27 11:40
全部输入之后、排序就可以了!
  • 3楼网友:安稳不如野
  • 2021-04-27 10:48
先输入再排序也可达到你的最终目的。 否则要用到VBA。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息