當前位置:首頁 » 辦公資訊 » 怎樣用excel抽人名

怎樣用excel抽人名

發布時間: 2022-04-25 08:45:50

① 如何在excel中把不同部門的人各抽取50%人員姓名提取出來


把下列代碼粘貼到模塊。在工作表建立個按鈕控制項,方便使用。

Sub 隨機提取部分和姓名()

Dim dic As Object, ran As Range, e_row As Long, Arr()

Set dic = CreateObject("scripting.dictionary")

With ThisWorkbook.ActiveSheet

.Range(Cells(2, 4), Cells(Cells.Rows.Count, 7)).ClearContents

e_row = .Range("A" & Cells.Rows.Count).End(xlUp).Row

For Each ran In Range("A2:A" & e_row)

If ran.Value <> "" Then dic(ran.Value) = ""

Next ran

s = -1

For Each xkey In dic.keys

For i = 2 To e_row

If Cells(i, 1).Value = xkey Then

s = s + 1

ReDim Preserve Arr(1, s)

Arr(0, s) = Cells(i, 1)

Arr(1, s) = Cells(i, 2)

End If

Next i

s = 0

Dim Arr2(), arr3()

Randomize (Timer)

nrnd = Int(UBound(Arr, 2) / 2) '50%取整

ReDim Arr2(nrnd)

Dim RndNumber, temp(), j, k, Maxrec As Integer, bm As Long, xm As Long

Randomize (Timer)

Maxrec = UBound(Arr, 2)

k = 0

ReDim temp(nrnd)

'不重復的隨機數

Do While k < nrnd

RndNumber = Int(Maxrec * Rnd) + 1

temp(k) = RndNumber

Arr2(k) = RndNumber

For j = 0 To k - 1

If temp(j) = RndNumber Then Exit For

Next j

If j = k Then k = j + 1

Loop

ReDim arr3(1, nrnd)

For g = 0 To nrnd

arr3(0, g) = Arr(0, Arr2(g))

arr3(1, g) = Arr(1, Arr2(g))

Next g

bm = .Cells(Cells.Rows.Count, 4).End(xlUp).Row + 1

.Cells(bm, 4).Resize(UBound(arr3, 2) + 1, 2) = Application.Transpose(arr3)

Dim h&, f&, arr5(), y&, Bool As Boolean

y = 0

For h = 0 To UBound(Arr, 2)

Bool = False

For f = 0 To UBound(arr3, 2)

If Arr(1, h) = arr3(1, f) Then

Bool = True

Exit For

End If

Next f

If Bool = False Then

ReDim Preserve arr5(1, y)

arr5(0, y) = Arr(0, h)

arr5(1, y) = Arr(1, h)

y = y + 1

End If

Next h

xm = .Cells(Cells.Rows.Count, 6).End(xlUp).Row + 1

.Cells(xm, 6).Resize(UBound(arr5, 2) + 1, 2) = Application.Transpose(arr5)

ReDim Arr(1, 0)

ReDim Arr2(0)

ReDim arr3(1, 0)

ReDim arr5(1, 0)

Next xkey

End With

End Sub

② 如何在excel裡面一行提取人名

是說在已經有的文章裡面找到你想要的那一個名字嗎,在你知道的情況下,在excel表格使用快捷鍵CTRL+h鍵,會彈出來一個用什麼字替換什麼字的對話框,裡面有個設置形狀格式,改為圖案,顏色,讓想要的文字替換為這個文字的另一種顏色就行,很輕易的就能看出來

③ 怎樣用excel製作抽獎姓名

公司每年年終都會搞抽獎活動,隨機從參會員工名單中抽取若干名員工發放年終實物大獎,身邊沒有搖獎機情況下,大家可以試著在EXCEL內通過公式來製作一個抽獎器,製作方法挺簡單的,大家可以參考本經驗製作,具體操作方法如下

注意事項

  • 各版本EXCEL設置方法類似

  • 按住F9鍵不放,保持多少時間放開可以自行規定,確保搖獎公平性

  • 按F9鍵人與報數人分開,確保搖獎公正性

  • 要同時產生多少個中獎人,只需在中獎人單元格列設置多少個公式

  • 以上資料供參考

    ④ excel如何實現不重復抽人名

    要完美實現可能需要編寫宏,所以簡單一點的辦法:
    1.在姓名列的後一列用如下公式=INDIRECT("A"&TEXT(RANDBETWEEN(1,15),"#")) 並下拉公式;
    2.其中公式中A為姓名列的列號,1為姓名的開始行,15為姓名結束行,樓主依實際情況改變,
    3.在新產生的列用EXCEL的刪除重復項功能把重復項刪掉並取前10個結果 (刪除重復項前先把新列復制粘貼為文本)。

    ⑤ 怎麼在excel中隨機抽取人名

    用INDEX配合隨機函數 RAND/RANDBETWEEN

    ⑥ excel相關,有多個工作表名單,如何實現一鍵從每個工作表裡隨機抽取一個人名出來,每個工作表抽一個

    操作:
    分別在不同單元格用公式:=INDEX(Sheet2!A:A,RANDBETWEEN(1,5))
    =INDEX(Sheet3!A:A,RANDBETWEEN(1,5))
    然後按F9鍵刷新即可。
    解釋:
    Randbetween(1,5),即在1到5之間取隨機數;
    Index,即按這個隨機數取對應的值;
    Sheet2,Sheet3,即對應說的多個工作表,可以按實際增加;
    A:A列,即姓名列,可以根據實際情況換;
    1,5, 即姓名列的開始和結束序號,根據實際情況改。

    ⑦ excel隨機抽取名字

    名字在A1到A20,B1中輸入:
    =indirect("a"&int(rand()*20+1))
    即可
    每次按下F9,B1中即可隨機產生一個名字,如果你有多個名字,類推就行啦,把公式中的20改成你的最大行數即可
    為何按下F9會變為0,謝謝
    你的數據區包含空格,即A1到A20中含有空白單元格
    任何疑義,hi我

    ⑧ 如何用EXCEL在一列指定的學號中,隨機抽取一個並顯示姓名

    很簡單啊,用VLOOKUP()粘貼函數即可。
    VLOOKUP的作用是:
    在表格或數值數組(學號列與姓名列構成數組)的首列查找指定的數值,並由此返回表格或數組當前行中指定列處的數值。
    解決問題:
    假設A列是學號,B列是姓名,數據區域為A1:B1000;隨機抽出的學號在D1單元格。則在D2單元格中輸入公式
    =VLOOKUP($D$1,$A$1:$B$1000,2)
    即可。
    效果:隨著D1單元格中的學號發生變化,在D2單元格中顯示D1單元格學號所對應的姓名。
    公式釋義:在A1:B1000單元格區域的首列(A列)查找等於D1單元格中的數值,並返回該數值所在行的第2列(B列)的數值(也就是學號所對應的姓名了)。
    注意:你所書寫的公式RAND()871+58應該改成RAND()*(928-871)+871。
    試試看!
    查看原帖>>

    熱點內容
    馬路上汽車的噪音在多少分貝 發布:2023-08-31 22:08:23 瀏覽:1740
    應孕棒多少錢一盒 發布:2023-08-31 22:08:21 瀏覽:1237
    標准養老金一年能領多少錢 發布:2023-08-31 22:05:05 瀏覽:1524
    湖北通城接網線多少錢一個月 發布:2023-08-31 21:59:51 瀏覽:1604
    開隨車吊車多少錢一個月 發布:2023-08-31 21:55:06 瀏覽:1365
    京東付尾款怎麼知道前多少名 發布:2023-08-31 21:52:58 瀏覽:1686
    在學校租鋪面一個月要多少錢 發布:2023-08-31 21:52:09 瀏覽:1822
    2寸有多少厘米 發布:2023-08-31 21:50:34 瀏覽:1457
    知道電壓如何算一小時多少電 發布:2023-08-31 21:46:20 瀏覽:1444
    金手鐲54號圈周長是多少厘米 發布:2023-08-31 21:44:28 瀏覽:1618