Excel怎么生成随机数?

方法一:公式法

1、我们以生成1-10范围内的随机数字为例,讲述方法。

首先,在A2单元格中输入公式:=SMALL(IF(COUNTIF($A$1:A1,ROW($1:$11))=0,ROW($1:$11)),INT(RAND()*(11-ROW(A1))+1))

然后按下Ctrl+Shift+Enter三键结束数组公式。

2、然后,下拉填充公式到A12单元格,也就是填充11个单元格,为什么要填充11个呢,我们明明只要10个数字?这是因为,最后一个数字是不会变化的,所以呢,要生成10个随机数,需要填充11个单元格,同样的生成11个随机数的话,要填充12个单元格,除此之外,公式中的11还要改成12。

3、生成随机数后,每按下一次F9(或者其他单元格进行一次计算),随机数就会刷新一次,重新生成一组随机数,要注意喽!

4、好了,一组不重复的随机数字生成了,现在我们回头看看这个公式是怎么实现的吧。首先看Small函数的第一个参数,也就是数字区域,这里是利用if和Countif函数来实现此单元格上面的单元格区域,是否有当前单元格的数字,如果有,就返回False,而如果没有就返回这个数字,从而生成一组由上面单元格没有的数字和Flase组成的序列,下图是按F9得到的结果:

5、Small函数的第二个参数,也就是从这个序列中取第几个最小值,在得到的数字中,利用随机函数rand和row函数,实现在这有个个数中随机抽取一个数字,从而得到排序中这个数字顺序的一个数字。通过这样一个数组公式,就实现了生成一组不重复的随机数字啦。

方法二:VBA法

1、VBA功能强大,可以利用很多算法实现随机数。这里介绍一种简单的办法。首先在Excel中按下Alt+F11,打开VBE界面,双击要生成随机数的工作表,在右侧空白处需要输入代码。

输入代码如下:

Sub m()

Range("A:A").ClearContents'这里是A列,根据需要修改

For i = 1 To 10'这里是10个数字,根据需要修改

kkk:

Randomize

x = Int(Rnd * 10) + 1

If Application.CountIf(Range("A:A"), x) = 0 Then

Cells(i, 1) = x

Else

GoTo kkk

End If

Next i

End Sub

2、代码原理很简单,就是随机生成数字,如果A列中有了这个数字,就返回再次随机生成,一直到没有这个数字为止;利用循环生成制定数量的数字。

3、按下F5执行代码,就看到在对应的Sheet中的对应列,生成了一组随机的不重复的数字。



  • 鍦excel鎬庢牱鐢熸垚闅忔満鏁?
    绛旓細鏂规硶涓锛氫娇鐢≧AND鍑芥暟浜х敓0鍒1涔嬮棿鐨勯殢鏈烘暟 渚嬪锛屽湪鍗曞厓鏍糀1涓緭鍏ュ叕寮忊=RAND()鈥,鐒跺悗鎸変笅鍥炶溅閿紝灏嗛殢鏈虹敓鎴愪竴涓柊鐨勯殢鏈烘暟銆傛瘡娆¢噸鏂拌绠楁垨鍒锋柊宸ヤ綔琛ㄦ椂锛岀敓鎴愮殑闅忔満鏁颁細鍙戠敓鏀瑰彉銆傛柟娉曚簩锛氫娇鐢≧ANDBETWEEN鍑芥暟鍦ㄦ寚瀹氱殑鑼冨洿鍐呯敓鎴愪竴涓殢鏈烘暣鏁 渚嬪锛屽湪鍗曞厓鏍糀2杈撳叆鍑芥暟鈥=RANDBETWEEN(1, 10)鈥濓紝...
  • excel鎬庝箞浜х敓闅忔満鏁?
    绛旓細鎮ㄥ彲浠ヤ娇鐢 Excel 涓殑 "RAND" 鍜 "RANK" 鍑芥暟浠ュ強涓浜涢昏緫鍑芥暟鏉ョ敓鎴愰殢鏈虹殑鏁板瓧锛屽苟灏嗗叾鍒嗛厤鍒版寚瀹氱殑鍖洪棿鍐銆備互涓嬫槸鍏蜂綋姝ラ锛1. 棣栧厛锛岃纭畾鎮ㄨ浣跨敤鐨勫尯闂寸殑鏈灏忓煎拰鏈澶у笺2. 杈撳叆涓涓寘鍚鍖洪棿鎵鏈夊彲鑳藉肩殑鍒楄〃锛屼緥濡傦紝鍦ㄥ崟鍏冩牸 A1 鍒 A10 涓緭鍏 1 鍒 10 鐨勬暟瀛椼3. 鍦ㄥ崟鍏冩牸 B1...
  • 鏁欎綘鍦 Excel 涓鐢熸垚闅忔満鏁鐨 5 绉嶆柟娉
    绛旓細1. RAND鍑芥暟鐨勯瓟娉旹xcel鐨勫唴缃甊AND()鍑芥暟鏄敓鎴愰殢鏈哄皬鏁扮殑寰楀姏鍔╂墜锛岃繑鍥0鍒1涔嬮棿鐨勯殢鏈烘暟銆傞氳繃璋冩暣鍏紡锛屽 =RAND() * (Y-X) + X锛屼綘鍙互杞绘澗鍦ㄦ寚瀹氳寖鍥村唴鐢熸垚闅忔満鏁般傝嫢闇瑕佹暣鏁帮紝鍙渶鍦ㄧ粨鏋滀笂鍔犱笂ROUND()鍑芥暟锛屽 ROUND(RAND() * (Y-X) + X, 0)銆2. RANDBETWEEN鐨勭伒娲诲簲鐢≧ANDBETWEEN...
  • excel闅忔満鏁版庝箞鍋?
    绛旓細1銆侀鍏堝湪excel琛ㄦ牸鐨勫崟鍏冩牸鍐呰緭鍏ラ殢鏈哄嚱鏁板叕寮忥細=RAND()銆2銆佺偣鍑诲洖杞﹀嵆鍙敓鎴愪竴涓殢鏈烘暟瀛锛岃鏁版嵁鐨勫ぇ灏忚寖鍥存棤娉曟帶鍒讹紝闇瑕佸皢鍏惰缃湪涓瀹氳寖鍥村唴銆3銆佷緥濡傞渶瑕佸皢鍏惰缃负鏁板瓧5鍒版暟瀛15涔嬮棿锛屽彲浠ヨ緭鍏ラ殢鏈哄嚱鏁帮細=RAND()*(15-5)+5銆4銆佺偣鍑诲洖杞︼紝鍗冲彲灏嗚緭鍏ョ殑鍏紡鐢熸垚璁$畻缁撴灉锛屽湪涓嬪浘涓彲浠ョ湅鍒扮敓鎴...
  • excel鏂囨。鐢熸垚闅忔満鏁鐨勬柟娉曟湁鍝簺?
    绛旓細WPS鍦‥xcel鏂囨。涓敓鎴愰殢鏈烘暟鐨勬柟娉曟槸浣跨敤鈥淩AND鈥濆嚱鏁銆傚湪Excel涓紝浣犲彲浠ヤ娇鐢ㄥ唴缃殑鍑芥暟鏉ユ墽琛屽悇绉嶈绠楀拰鎿嶄綔锛屽叾涓氨鍖呮嫭鐢熸垚闅忔満鏁般俉PS Excel涓嶮icrosoft Excel鍦ㄨ繖鏂归潰鏄浉浼肩殑銆傝鐢熸垚闅忔満鏁帮紝浣犲彲浠ヤ娇鐢ㄢ淩AND鈥濆嚱鏁般1. RAND鍑芥暟鐨勫熀鏈敤娉曪細鍦ㄥ崟鍏冩牸涓緭鍏モ=RAND()鈥濈劧鍚庢寜Enter閿紝Excel灏嗗湪璇...
  • 鎬庝箞鐢Excel鐢熸垚闅忔満鏁?
    绛旓細1銆鐢熸垚绗竴涓闅忔満鏁銆傚湪E2鍗曞厓鏍煎唴杈撳叆鍏紡鈥=ROUNDUP(RAND()*2*(100-SUM($E$1:E1))/(11-ROW(E1)),1)鈥濈敓鎴愮涓涓殢鏈烘暟銆2銆佽皟鏁存湁鏁堟暟瀛椾綅鏁般備笅鍥剧孩妗嗕腑鐨勬暟瀛楁帶鍒剁潃闅忔満鏁版湁鏁堟暟瀛椾綅鏁帮紝濡傛灉鎯充繚鐣欎笁浣嶆湁鏁堟暟瀛楋紝灏嗗叾鏀规垚3鍗冲彲銆3銆佹媺浼稿~鍏匛2鍒癊10銆傜偣鍑籈2鍙充笅瑙掔殑榛戠偣锛岄紶鏍囧彉鎴...
  • 鎬庝箞鍦Excel閲鐢熸垚鏁板瓧鐨闅忔満鍊?
    绛旓細1銆丷AND()0鍒1鐨闅忔満鏁锛屾牴鎹渶瑕佷綔涓虹郴鏁帮紝鍙换鎰忎娇鐢紙鍖呮嫭灏忔暟锛2銆丷ANDBETWEEN()浠ヤ袱涓弬鏁拌寖鍥村唴鐨勯殢鏈烘暣鏁 3銆丷ANDARRAY()<闄2021涔嬪悗鐗堟湰> 鍙傛暟1/2锛氳繑鍥炲兼暟缁勮鏁/鍒楁暟锛涘弬鏁3/4锛氭渶灏忓/鏈澶у 鍙傛暟5锛氭槸鍚︽暣鏁 鏂扮増office鎻愪緵鐨勬暟缁勫嚱鏁帮紝鏂扮増鍑芥暟杩斿洖鍊煎彲浠ユ槸鏁扮粍锛堜笉鍐嶉檺浜庢暟缁勫叕寮...
  • excel鎬庝箞鑷姩鐢熸垚涓缁闅忔満鏁?
    绛旓細1銆佸涓嬪浘鎵绀猴紝鍦‵6鍗曞厓鏍艰緭鍏ユ寚瀹氱殑骞冲潎鍊硷紝闇瑕佸湪C3:H11鍗曞厓鏍煎尯鍩熷唴鐢熸垚涓缁闅忔満鏁銆傝姹傝繖浜涢殢鏈烘暟鐨勫钩鍧囧艰绛変簬F6鎸囧畾鐨勫笺2銆佸湪c3鍗曞厓鏍艰緭鍏ヤ互涓嬪叕寮忥細=IF(AVERAGE($C$3:$H$11)=$F$1,C3,RANDBETWEEN(20,80)/10),鍏朵腑锛歊ANDBETWEEN鍑芥暟鐢ㄤ簬鐢熸垚鎸囧畾鍖洪棿鐨勯殢鏈烘暟銆傚厛浣跨敤RANDBETWEEN(20,...
  • excel琛ㄦ牸鎬庝箞璁剧疆闅忔満鏁癳xcel琛ㄦ牸鎬庝箞璁剧疆闅忔満鏁板甫灏忔暟
    绛旓細1. 鎵撳紑Excel锛屾柊寤轰竴涓伐浣滆〃鎴栨墦寮涓涓幇鏈夌殑宸ヤ綔琛ㄣ2. 閫夋嫨涓涓崟鍏冩牸锛屼緥濡侫1锛屼綔涓鐢熸垚闅忔満鏁鐨勪綅缃3. 鍦ㄨ鍗曞厓鏍间腑杈撳叆浠ヤ笅鍏紡锛歚=RAND()`4. 鎸変笅鍥炶溅閿紝浣犱細鍙戠幇A*鍗曞厓鏍间腑鍑虹幇浜嗕竴涓0鍒1涔嬮棿鐨勯殢鏈哄皬鏁般5. 鑻ヨ鐢熸垚鐗瑰畾鑼冨洿鍐呯殑闅忔満鏁帮紝鍙互浣跨敤浠ヤ笅鍏紡锛歚=RAND()*(max-min...
  • 鎬庝箞鍦excel閲岄潰鐢熸垚闅忔満鏁?
    绛旓細鏂规硶涓锛氬叕寮忔硶 1銆佹垜浠互鐢熸垚1-10鑼冨洿鍐呯殑闅忔満鏁板瓧涓轰緥锛岃杩版柟娉曘傞鍏堬紝鍦ˋ2鍗曞厓鏍间腑杈撳叆鍏紡锛=SMALL(IF(COUNTIF($A$1:A1,ROW($1:$11))=0,ROW($1:$11)),INT(RAND()*(11-ROW(A1))+1))鐒跺悗鎸変笅Ctrl+Shift+Enter涓夐敭缁撴潫鏁扮粍鍏紡銆2銆佺劧鍚庯紝涓嬫媺濉厖鍏紡鍒癆12鍗曞厓鏍硷紝涔熷氨鏄~鍏...
  • 扩展阅读:1-100随机数字生成器 ... rand产生1-100随机数 ... 表格正负0.5随机数 ... 表格自动生成数字1-100 ... 在线随机生成器 ... 1-100随机数不重复 ... 表格自动生成随机数字 ... excel随机小数精确到0.1 ... excel自动生成口算题 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网