跳到主要内容

如何在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应用程序 窗口。

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) 进入一个单元格,然后按 输入 键,然后将填充手柄拖到所需的范围。 看截图:
doc-randomize-weekday-weekend-2


箭头蓝色右气泡 使用 Kutools for Excel 仅生成随机工作日或仅随机周末

Kutools for Excel, 与超过 300 方便的功能,使您的工作更加轻松。 

免费安装 Kutools for Excel,请执行以下操作:

1.选择要生成工作日或周末日期的范围,然后单击 库工具 > 插入随机数据。 看截图:
doc-randomize-weekday-weekend-4

2.在 插入随机数据 对话框中,单击 日期 标签,然后 日历按钮 选择所需的开始日期和结束日期,然后检查 Workday or 周末 您需要的选项,如果要生成唯一的日期,可以检查 独特 选项。 看截图:
doc-randomize-weekday-weekend-4

3。 点击 Ok 应用并关闭对话框,然后在选择中生成唯一的周末日期。
doc-randomize-weekday-weekend-5

提示: 如果允许插入重复数据,只需取消选中 独特价值 在对话框中

使用插入随机数据功能,您还可以将整数,时间,字符串和自定义列表随机化。 请点击这里获取更多信息。


最佳办公生产力工具

🤖 Kutools 人工智能助手:基于以下内容彻底改变数据分析: 智能执行   |  生成代码  |  创建自定义公式  |  分析数据并生成图表  |  调用 Kutools 函数...
热门特色: 查找、突出显示或识别重复项   |  删除空白行   |  合并列或单元格而不丢失数据   |   不使用公式进行四舍五入 ...
超级查询: 多条件VLookup    多值VLookup  |   跨多个工作表的 VLookup   |   模糊查询 ....
高级下拉列表: 快速创建下拉列表   |  依赖下拉列表   |  多选下拉列表 ....
列管理器: 添加特定数量的列  |  移动列  |  切换隐藏列的可见性状态  |  比较范围和列 ...
特色功能: 网格焦点   |  设计图   |   大方程式酒吧    工作簿和工作表管理器   |  资源库 (自动文本)   |  日期选择器   |  合并工作表   |  加密/解密单元格    按列表发送电子邮件   |  超级筛选   |   特殊过滤器 (过滤粗体/斜体/删除线...)...
前 15 个工具集12 文本 工具 (添加文本, 删除字符,...)   |   50+ 图表 类型 (甘特图,...)   |   40+ 实用 公式 (根据生日计算年龄,...)   |   19 插入 工具 (插入二维码, 从路径插入图片,...)   |   12 转化 工具 (小写金额转大写, 货币兑换,...)   |   7 合并与拆分 工具 (高级组合行, 分裂细胞,...)   |   ... 和更多

使用 Kutools for Excel 增强您的 Excel 技能,体验前所未有的效率。 Kutools for Excel 提供了 300 多种高级功能来提高生产力并节省时间。  单击此处获取您最需要的功能...

产品描述


Office Tab 为 Office 带来选项卡式界面,让您的工作更加轻松

  • 在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
  • 在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
  • 每天将您的工作效率提高50%,并减少数百次鼠标单击!
Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations