วิธีสร้างวันธรรมดาหรือวันหยุดสุดสัปดาห์แบบสุ่มใน Excel
บทช่วยสอนนี้พูดถึงการสร้างเฉพาะวันธรรมดาแบบสุ่มหรือเฉพาะวันหยุดสุดสัปดาห์แบบสุ่มใน Excel ทำตามขั้นตอนด้านล่างเพื่อรับรายละเอียดเพิ่มเติม
สร้างเฉพาะวันธรรมดาแบบสุ่มใน Excel
สร้างเฉพาะวันธรรมดาแบบสุ่มหรือเฉพาะวันหยุดสุดสัปดาห์แบบสุ่มด้วย Kutools for Excel
สร้างเฉพาะวันธรรมดาแบบสุ่มใน 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 + Enter พร้อมกันจากนั้นลากที่จับเติมไปยังช่วงที่คุณต้องการสร้างวันธรรมดา ดูภาพหน้าจอ:
เคล็ดลับ:
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 + Enter.
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) ลงในเซลล์จากนั้นกด เข้าสู่ คีย์และลากจุดจับเติมไปยังช่วงที่คุณต้องการ ดูภาพหน้าจอ:
สร้างเฉพาะวันธรรมดาแบบสุ่มหรือเฉพาะวันหยุดสุดสัปดาห์แบบสุ่มด้วย Kutools for Excel
หลังจาก ติดตั้งฟรี Kutools สำหรับ Excel โปรดทำดังนี้:
1. เลือกช่วงที่คุณต้องการสร้างวันธรรมดาหรือวันหยุดสุดสัปดาห์จากนั้นคลิก Kutools > แทรกข้อมูลสุ่ม. ดูภาพหน้าจอ:
2 ใน แทรกข้อมูลสุ่ม โต้ตอบคลิก วันที่ และจากนั้น ปุ่มปฏิทิน เพื่อเลือกวันที่เริ่มต้นและวันที่สิ้นสุดที่คุณต้องการจากนั้นเลือก วันทำงาน or สุดสัปดาห์ ตัวเลือกที่คุณต้องการหากคุณต้องการสร้างวันที่ที่ไม่ซ้ำกันคุณสามารถตรวจสอบได้ เป็นเอกลักษณ์ ตัวเลือก ดูภาพหน้าจอ:
3 คลิก Ok เพื่อใช้และปิดกล่องโต้ตอบจากนั้นในการเลือกจะมีการสร้างวันหยุดสุดสัปดาห์ที่ไม่ซ้ำกัน
เคล็ดลับ: หากคุณได้รับอนุญาตให้แทรกข้อมูลที่ซ้ำกันให้ยกเลิกการเลือก ค่าเฉพาะ ในกล่องโต้ตอบ
ด้วยฟังก์ชันแทรกข้อมูลแบบสุ่มคุณยังสามารถสุ่มจำนวนเต็มเวลาสตริงและรายการแบบกำหนดเองได้ คลิกที่นี่สำหรับข้อมูลเพิ่มเติม
บทความสัมพัทธ์
สุดยอดเครื่องมือเพิ่มผลผลิตในสำนักงาน
เพิ่มพูนทักษะ Excel ของคุณด้วย Kutools สำหรับ Excel และสัมผัสประสิทธิภาพอย่างที่ไม่เคยมีมาก่อน Kutools สำหรับ Excel เสนอคุณสมบัติขั้นสูงมากกว่า 300 รายการเพื่อเพิ่มประสิทธิภาพและประหยัดเวลา คลิกที่นี่เพื่อรับคุณสมบัติที่คุณต้องการมากที่สุด...
แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก
- เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
- เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
- เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!