Tag: 随机

使用VBA在单元格范围内生成真正的随机数字

我试图随机分配范围为B4:Z23的单元格,大小为20 X 25,即总共500个单元格应该包含总共500个唯一值,随机值的范围是1到500.因此,每个数字在表格中只能出现一次。 尝试下面的代码,但它在一些单元格中生成重复。 有人能帮我一下吗 ? Option Explicit Public Sub Random() Dim RandomNumber As Integer Dim i, j As Integer For j = 2 To 26 Randomize RandomNumber = Int((500 – 1 + 1) * Rnd + 1) For i = 4 To 23 With Sheets("Game") Randomize RandomNumber = Int((500 – 1 + 1) * […]

VBA rand如何使用上限和下限生成随机数字?

所以也许这是多余的,也许这就像是问为什么大多数人类是用5个手指出生的,最后的简短答案总是:因为这就是它是如何的,它只是工作,但我讨厌这个答案,而且我很想知道如何在VBA中的Rnd()函数工作。 Office Excel女士的MSDN表示,RND被定义为: Rnd[(number)] 'The optional number argument is a Single or any valid numeric expression. 它继续说 “数字的值决定了Rnd如何生成一个随机数:对于任何给定的初始种子,都会生成相同的数字序列,因为对Rnd函数的每个连续调用都使用前一个数作为序列中下一个数的种子。 其次是: 要在给定范围内产生随机整数,请使用以下公式: Int((upperbound – lowerbound + 1) * Rnd + lowerbound) 例如: Dim MyValue MyValue = Int((6 * Rnd) + 1) ' Generate random value between 1 and 6. 但是,这是如何工作的? 这些数字来自哪里? 为什么6 * Rnd + 1会得到1到6之间的随机数字,而6 * […]

根据列的input生成一系列随机数。 VBA Excel

列A有从0到5的数字。当有一个大于0的数字时,我希望它在该单元格旁边的列中生成这个数目的随机数字。 例如,如果A4 = 3,那么我想在B4,C4和D4中有一个随机数。 我有下面的代码,在拾取超过0的值,并生成一个200和300之间的随机数工作正常,但我坚持如何让它产生多个。 任何人都可以指向正确的方向吗? 谢谢 Sub RandomNumbers() Dim i As Integer Dim j As Integer Dim lastrow As Integer lastrow = Range("a1").End(xlDown).Row For j = 1 To 1 For i = 1 To lastrow If ThisWorkbook.Sheets("LossFrequency").Cells(i, j).Value > 0 Then ThisWorkbook.Sheets("LossFrequency").Cells(i, j + 1).Value = Int((300 – 200 + 1) * Rnd + […]

Excel VBA:SQL查询以随机顺序返回n行

我正在查询对Excel范围内的logging。 我需要从15个池中随机select5条logging。我做了一些研究,可以find在MySQL和T-SQL中随机sorting的语法。 这是一个来自SO的问题,总结了这些例子: 以随机顺序返回行 SELECT * FROM table ORDER BY NEWID() – 从T-SQL 在Excel VBA中是否有类似的NEWID()或UUID()语法?如果不是,那么实现这一点的优雅解决scheme是什么?

如何在Excel中的两个时间段之间生成一个随机小时插槽?

尝试在Excel中的两个时间段之间生成一个随机小时插槽的开始时间。 例如,如果时间段在06:48和09:36之间,则生成的开始时间可以是06:48和08:36之间的任何值(以允许小时隙)。 我将需要这个公式适用于很多不同的时间段,所以公式更容易操纵更好。

Excel:如何生成真实的随机数字,其实际数字为低和高2?

如何生成真正的随机数字具有低和高2实数? 我想要2.7和3.2之间的随机数字。 我应该写什么来得到这个? 🙂 D:

在Excel中的两个值之间生成一个正态分布的随机整数列表

我需要使用给定的均值为正态分布生成一个下限和上限之间的随机整数值列表。 例如:在1到10之间的150个随机值的钟形分布,平均值为3.平均值可以近似(例如在2.8和3.2之间的浮点数),但是列表的数量需要是整数。 这个线程似乎指向可能的方向。 用NORM.INV(RAND(),mean,dev)我可以生成浮动,然后将其转换为整数,但我不知道如何限制最小值和最大值。 RANDBETWEEN()可以解决这个问题,但是它似乎不适用于NORM.INV

Excel VBA强大的随机数发生器

我会尽量保持这一点尽可能基本和重点。 基本上,我有一定的范围的数字相关的权重/概率。 例如 : 0:10% 1:50% 2:15% 3:25% 这然后转化为累积概率: 0:10% 1:60% 2:75% 3:100% 在VBA中使用统一的RNG,程序会生成0到1之间的数字,或者设置的任何次数限制。 使用与前面的示例相同的值,但只生成大于60%(<= 100%)的数字,则会导致数字在0.6 – 1.0之间。 这是我卡住的地方。 我需要将这些随机数字非常有效地转换成它们的“对应值”。 所有这些都存储在VBAvariables中,不用说,我不想为每种情况写一个Select Case,因为它们实际上是120个不同的variables和权重。 到目前为止,这是我必须生成这些数字: RandomNumber = LowerLimit + Rnd() * (1 – LowerLimit) 感谢您的帮助! 如果我错过了一个正在讨论这个特定问题的post,请随时引荐我,但是我确实没有find与相应的随机数有关的任何内容。

条件列表中的随机项目

我使用下面的公式从列表中输出一个随机项目: =INDEX(Database!A1:A100,RANDBETWEEN(1,COUNTA(Database!A1:A100)),1) 有没有办法给这个添加一些条件? 例如,数据库列出学生和考试成绩。 我想select一个随机的学生,只要他或她的考试成绩在80%以上。 学生姓名在A栏,考试成绩在B栏。

从Excel范围中select随机数

在下面的列表中,它是一个Excel范围,我需要select两个数字等于100,所以作为回报,我想得到(30&70)或(60&40)。 我可以做到这一点dynamic 我使用Excel,但如果你有任何其他程序的build议,它会没事的。 一个 三十 60 70 40