Note: The other languages of the website are Google-translated. Back to English

如何在Excel中生成隨機的工作日或週末日期?

本教程討論的是在Excel中僅生成隨機工作日或僅生成隨機週末,請按照以下步驟操作以獲取更多詳細信息。

在Excel中僅生成隨機工作日

使用Kutools for Excel僅生成隨機的工作日或僅隨機的周末 好主意3


箭頭藍色右氣泡 在Excel中僅生成隨機工作日

在Excel中,有兩種​​方法可以幫助您根據需要在日期範圍內僅將工作日隨機化。

方法1使用公式生成隨機工作日

選擇一個單元格並鍵入此公式 = DATE(2014,1,1)+ LARGE(IF(WEEKDAY(DATE(2014,1,1)+ ROW($ 1:$ 365)-1,2)<6,ROW($ 1:$ 365)-1,“” ),RANDBETWEEN(1,SUM(-(WEEKDAY(DATE(2014,1,1)+ ROW($ 1:$ 365)-1,2)<6)))))),然後按 Shift + Ctrl + 輸入 鍵,然後將填充手柄拖到要生成的工作日範圍內。 看截圖:
doc-randomize-weekday-weekend-1

小提示:

1.如果要生成唯一的隨機工作日,則可以使用此公式 =DATE(2014, 1, 1)+(LARGE(IF(WEEKDAY((DATE(2014, 1, 1)+ROW($1:$365)-1)*((COUNTIF($A$1:A1, DATE(2014, 1, 1)+ROW($1:$365)-1))=0), 2)<6, ROW($1:$365)-1, ""), RANDBETWEEN(1, SUM(--(WEEKDAY((DATE(2014, 1, 1)+ROW($1:$365)-1)*((COUNTIF($A$1:A1, DATE(2014, 1, 1)+ROW($1:$365)-1))=0), 2)<6))))) 記得按 Shift + Ctrl + 輸入.

2.在上述公式中,2014,1,1是所需日期範圍的開始日期,365是日期範圍中的天數,您可以根據需要進行更改。

3.您不能將公式生成唯一的隨機工作日放在A1中。

方法2使用VBA在一年內生成隨機工作日

如果您想在一年之內隨機化工作日並且對VBA熟悉,則可以執行以下操作:

1。 按 Alt + F11鍵 打開鑰匙 Microsoft Visual Basic for Applications 窗口。

2。 點擊 插入 > 模塊,然後將以下VBA代碼粘貼到彈出窗口。

VBA:一年內將工作日隨機化。

Dim RandomizedYet As Boolean
'Updateby20150108
Function RandomizeDates(pYear As Long)
	Dim i As Long
	Dim DaysInYear As Long
	Dim xIndex As Long
	Dim RndIndex As Long
	Dim Temp As Date
	Dim Weekdays() As Variant
	If Not RandomizedYet Then
		RandomizedYet = True
		Randomize
	End If
	DaysInYear = DateSerial(pYear + 1, 1, 1) - DateSerial(pYear, 1, 1)
	ReDim Weekdays(1 To DaysInYear)
	For i = 1 To DaysInYear
		If Weekday(DateSerial(pYear, 1, i), vbMonday) < 6 Then
			xIndex           = xIndex + 1
			Weekdays(xIndex) = DateSerial(pYear, 1, i)
		End If
	Next
	ReDim Preserve Weekdays(1 To xIndex)
	For i = xIndex To 1 Step - 1
		RndIndex = Int(i * Rnd + 1)
		Temp = Weekdays(RndIndex)
		Weekdays(RndIndex) = Weekdays(i)
		Weekdays(i) = Temp
	Next
	RandomizeDates = Application.WorksheetFunction.Transpose(Weekdays)
End Function

3.保存代碼並關閉窗口以返回工作表,然後鍵入此公式= RandomizeDates(2014) 進入一個單元格,然後按 Enter 鍵並將填充手柄拖到所需的範圍。 看截圖:
doc-randomize-weekday-weekend-2


箭頭藍色右氣泡 使用Kutools for Excel僅生成隨機的工作日或僅隨機的周末

Excel的Kutools, 與以上 300 方便的功能,使您的工作更加輕鬆。 

免費安裝 Kutools for Excel,請執行以下操作:

1.選擇要生成工作日或週末日期的範圍,然後單擊 庫工具 > 插入隨機數據。 看截圖:
doc-randomize-weekday-weekend-4

2。 在裡面 插入隨機數據 對話框中單擊 日期 標籤,然後 日曆按鈕 選擇所需的開始日期和結束日期,然後檢查 勞動日 or 週末 您需要的選項,如果要生成唯一的日期,可以檢查 獨特 選項。 看截圖:
doc-randomize-weekday-weekend-4

3。 點擊 Ok 應用並關閉對話框,然後在選擇中生成唯一的周末日期。
doc-randomize-weekday-weekend-5

小提示: 如果允許您插入重複數據,只需取消選中 獨特價值 在對話框中

使用插入隨機數據功能,您還可以隨機化整數,時間,字符串和自定義列表。 點擊這裡了解更多信息。



最佳辦公效率工具

Kutools for Excel 解決了你的大部分問題,並將你的生產力提高了 80%

  • 重用: 快速插入 複雜的公式,圖表 以及您以前使用過的任何東西; 加密單元 帶密碼 創建郵件列表 並發送電子郵件...
  • 超級公式欄 (輕鬆編輯多行文本和公式); 閱讀版式 (輕鬆讀取和編輯大量單元格); 粘貼到過濾範圍...
  • 合併單元格/行/列 不會丟失數據; 拆分單元格內容; 合併重複的行/列...防止細胞重複; 比較範圍...
  • 選擇重複或唯一 行; 選擇空白行 (所有單元格都是空的); 超級查找和模糊查找 在許多工作簿中; 隨機選擇...
  • 確切的副本 多個單元格,無需更改公式參考; 自動創建參考 到多張紙; 插入項目符號,複選框等...
  • 提取文字,添加文本,按位置刪除, 刪除空間; 創建和打印分頁小計; 在單元格內容和註釋之間轉換...
  • 超級濾鏡 (將過濾方案保存並應用於其他工作表); 高級排序 按月/週/日,頻率及更多; 特殊過濾器 用粗體,斜體...
  • 結合工作簿和工作表; 根據關鍵列合併表; 將數據分割成多個工作表; 批量轉換xls,xlsx和PDF...
  • 超過 300 項強大的功能. 支持 Office / Excel 2007-2021 和 365。支持所有語言。 在您的企業或組織中輕鬆部署。 完整功能 30 天免費試用。 60 天退款保證。
kte選項卡201905

Office選項卡為Office帶來了選項卡式界面,使您的工作更加輕鬆

  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
  • 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
  • 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!
officetab底部
按評論排序
留言 (0)
還沒有評分。 成為第一位評論!
這裡還沒有評論
留下你的意見
以訪客身份發帖
×
評價此帖子:
0   字符
推薦地點

關注我們

版權所有©2009 - 萬維網。extendoffice.com。 | 版權所有。 供電 ExtendOffice。 |
Microsoft和Office徽標是Microsoft Corporation在美國和/或其他國家的商標或註冊商標。
受Sectigo SSL保護