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 是產...