使用 CTRL+SHIFT+ENTER 填充 Excel 电子表格单元格是否会导致排序失败?

使用 CTRL+SHIFT+ENTER 填充 Excel 电子表格单元格是否会导致排序失败?

我有一长串条目,我想随机排序。我突出显示一列,输入 =RAND(),然后按 CTRL+SHIFT+ENTER,瞧,我的列中充满了随机数。然后我想按从最小值到最大值对列进行排序,以随机化我的列表。当我尝试这样做时,我收到了某种消息,说 Excel 无法对“数组”进行排序。

于是我对自己说,好的。我只需创建另一列,将这些随机数粘贴为值并继续。 不幸的是,这并没有解决问题。它没有告诉我无法对数组进行排序,而是暂停了一会儿,然后删除 B 列和 C 列中的所有信息,并在 A 列中返回一些不同但仍然是随机的数字。我甚至尝试复制数据并将其重新粘贴到另一张表中,看看这是否能解决问题,但它继续做同样的事情。

我没有在网络上或在此论坛中找到任何真正解决此问题的内容,但我可能错过了一些东西,因此我会继续寻找解决方案,但如果你们中的任何超级用户专家知道为什么 Excel 会这样做以及如何解决这个问题,我很乐意听听你们的意见。

顺便说一句,我使用的是 Excel 2007,我以前使用过 Excel 的 RAND 函数,并在此版本的 Excel 中成功进行了排序,但我认为我以老式的方式填充了单元格 - 抓住自动填充十字线并将其向下拖动到单元格中。然而,那些是针对较小的排序作业(可能 100 条左右的记录)。我现在正尝试对 5,000 条记录执行同样的事情,出于所有显而易见的原因,我真的不想使用该方法。

在此先感谢您能给我提供的任何指导。

附录:发布此信息后,我知道了为什么 B 列和 C 列中的单元格是空白的。当我按下 CTRL+SHIFT+ENTER 时,Excel 会填充整个列,但我只有 5,000 条记录。解决这个问题最简单的方法(我首先想到的)是按 B 列或 C 列排序,找到最后一个条目并删除其余行。话虽如此,在 Excel 2007 中,用随机数填充一长串单元格的最简单方法是什么?有什么方法可以指定我希望用随机数填充的确切单元格?

答案1

每当你按下Ctrl++ShiftEnter,你正在处理的是数组,它有特殊规则。如果您只想用某个公式填充一组单元格并避免创建数组,请在一个单元格中输入公式,然后拖动该单元格右下角的手柄将其复制到任意数量的单元格中。

但是,我们仍存在一个问题,即对值进行排序会导致重新计算,而且由于公式=RAND()仍在单元格中,因此它们将被重新随机化并取消排序。因此,您只想生成一次随机数,方法是在随机发生后将公式转换为值。选择整个单元格范围,然后按Ctrl+ CCtrl+ VShift+ F10,然后按V。这样就可以复制、粘贴、右键单击,并将粘贴模式设置为“仅值”。它甚至可以在您已经创建的数组上工作。

然后您可以像平常一样对随机的现在静态值进行排序。

相关内容