在MS Excel中自动sorting字段

input新数据时,我想在Excel中自动sorting字段。 假设我有以下数据,

ABC
BCD
EFG
HIJ。

如果我input“Cde”或“fgh”的值,它应该自动sorting并移动到合适的位置。 我怎样才能在MS Excel 2007中做到这一点?

同样在我的MS Excel 2007中, 查看代码右键单击工作表以及在开发工具栏中的Visual Basic和macros都被禁用。 请帮助我的build议。

这样做的最优雅的方法是设置一个工作表macros,每次将值input到您正在使用的范围中的一个单元格中时,该macros就会运行。

这仍然是可能的,而不使用macros,但它是相当混乱。 对于数值数据,您可以将RANK和VLOOKUP结合起来,创build一个输出范围,当您将新值input到input范围时,该输出范围将自行sorting。 要处理文本值,您需要:

  1. UPPER每个sorting值
  2. 使用CODE函数将每个字符转换为数字(仅限ASCII)
  3. 将所有这些数字连接在一起
  4. 应用VALUE函数来阻止它们被parsing为文本
  5. 排列连接的数字。
  6. VLOOKUP的行列,增加额外的逻辑来处理关系…

如果只是偶尔添加额外的行,手动sorting表不是非常多的工作,所以这些方法可能都不适合。 这可以用5个按键来完成 – 一旦select了1个单元格,Ctrl + *就可以select整个表格,然后alt + d> s调出sorting框,然后inputsorting(如果sorting列尚未被选中)。