如何用excel把1 32列,隨機亂序排列

2021-04-13 01:50:06 字數 3305 閱讀 9402

1樓:匿名使用者

我暈。。來。a1-a32 是32行資料吧?

且不管它自

是行是列,原理都一樣,需要增加一輔助行或列,裡面用隨機函式 rand()取值,然後按這個行或列排序,就行了。

*****==

sub bbb()

dim a as integer

dim b as integer

dim c as integer

a = worksheetfunction.counta(range("a1:a32"))

c = 1

do while c <= a

b = int(rnd * a) + 1

if cells(b, 1).value <> "" thencells(b, 1).select

selection.copy '此處改一下,原是剪下,改為複製。

cells(c, 3).select

activesheet.paste

c = c + 1

else

end if

loop

end sub

2樓:匿名使用者

樓上有兩位說的用隨機數排序的方法很好。

程式改一下專也可達屬到要求:

sub bbb()

dim a as integer

dim b as integer

dim c as integer

a = worksheetfunction.counta(range("a1:a32"))

c = 1

do while c <= a

b = int(rnd * a) + 1

if cells(b, 2) <> 1 thencells(b, 2) = 1

cells(b, 1).select

selection.copy

cells(c, 3).select

activesheet.paste

c = c + 1

end if

loop

columns(2) = ""

end sub

3樓:匿名使用者

你所說的是32行。你在a列前插入一列。然後在a1格中輸入=rand(),再下拉到第32行,這樣每行中就有一個隨機的數值,再按a列排序就可以了。

4樓:匿名使用者

你說的是a1,a2.......都是a列中的每行嗎?那列都是自動有序的排列,這個excel程式就是這樣設計的,怎麼可以打亂,暈!!!!!就說要做什麼吧!

excel 如何自動生成32位的大寫字母跟數字組合的隨機序列,類似於驗證碼的那種隨機的

5樓:

rand函式詳解:

返回大於等於 0 及小於 1 的均勻分佈隨機實數,每次計算工作表時都將返回一個新的隨機實數。

語法rand( )

註解一、若要生成 a 與 b 之間的隨機實數,請使用:

rand()*(b-a)+a

二、若要得到該數為單位1的周圍的數。假設數在a1,則

=a1+(rand()-rand())*a1

比如0.6,就會求出 0.6±0.6範圍的隨即數

如果要使用函式 rand 生成一隨機數,並且使之不隨單元格計算而改變,可以在編輯欄中輸入「=rand()」,保持編輯狀態,然後按 f9,將公式永久性地改為隨機數。

用excel生成字母大小寫加數字的任意位數隨機密碼

考慮到部分網友可能急需這個公式,那麼我先在這裡把公式貼出來以供急用:

=concatenate(if(int(rand()*3)=0,char(int(rand()*10+48)),if(int(rand()*2)=0,char(int(rand()*25+65)),char(int(rand()*25+97)))),if(int(rand()*3)=0,char(int(rand()*10+48)),if(int(rand()*2)=0,char(int(rand()*25+65)),char(int(rand()*25+97)))),if(int(rand()*3)=0,char(int(rand()*10+48)),if(int(rand()*2)=0,char(int(rand()*25+65)),char(int(rand()*25+97)))),if(int(rand()*3)=0,char(int(rand()*10+48)),if(int(rand()*2)=0,char(int(rand()*25+65)),char(int(rand()*25+97)))),if(int(rand()*3)=0,char(int(rand()*10+48)),if(int(rand()*2)=0,char(int(rand()*25+65)),char(int(rand()*25+97)))),if(int(rand()*3)=0,char(int(rand()*10+48)),if(int(rand()*2)=0,char(int(rand()*25+65)),char(int(rand()*25+97)))),if(int(rand()*3)=0,char(int(rand()*10+48)),if(int(rand()*2)=0,char(int(rand()*25+65)),char(int(rand()*25+97)))),if(int(rand()*3)=0,char(int(rand()*10+48)),if(int(rand()*2)=0,char(int(rand()*25+65)),char(int(rand()*25+97)))))

我們來分解這個函式,這個函式以concatenate函式為主體包含了八個子部分:

if(int(rand()*3)=0,char(int(rand()*10+48)),if(int(rand()*2)=0,char(int(rand()*25+65)),char(int(rand()*25+97))))

而這個子部分又是由兩個判斷語句巢狀實現的,這個機制實現數字、大寫字母、小寫字母出現的概率相同

因為int(rand()*3)=0這個公式成功的概率只有1/3

而char(int(rand()*10+48)) 則顯示 [0-9]之間的數

而char(int(rand()*25+65)) 則顯示 [a-z]之間的字母

而char(int(rand()*25+97)) 則顯示 [a-z]之間的字母

6樓:匿名使用者

考慮到驗證碼隨機數列的可讀性,一般應剔除0,1,o,i 這些難於識別的字元,這樣使用mid()函式更有效。32位中每位使用函式mid("23456789abcdefghzklmnpqrstuvwxyz2",rand()*32+1,1),然後用concatenate(…………)32位即可。

如何用excel畫一列資料的直方圖

選中你要畫直方圖的資料,然後點格式 圖表 選你要的圖形,再下一步照上面的內容操作就行了。選中資料的列,直方圖,試試。如何用excel畫直方圖 在工作表介面 1 先將資料分組鍵入 比如區域a1 b8 2 單擊插入 圖表 柱形圖.再單擊子圖表型別中的平面直方圖,3 選定數字區域 sheet1a1 b8依...

ecel生成一列隨機數,Excel生成一列隨機數

excel隨機數函式 生成一列限來定了大小的隨機數,比如源生成0 0.01之間的隨機數的步驟是 1 開啟excel工作表 2 在左上角的名稱框中,輸入生成隨機數的區域,比如 a1 a100 按enter鍵後,將a1 a100單元格區域處於選擇狀態 3 輸入以下公式,按ctrl enter組合鍵結束 ...

excel一列中隨機抽取不同的值

假設從a列資料隨機抽取10個值,可以在b1輸入公式 row a a 然後下拉到b10即可,如果抽取的數值出現重複,可以多按幾次f9。公式含義是 lookup 1,1 a a row a a 自動查詢a列的最後一個資料的行號,roundup rand lookup 1,1 a a row a a 是產...