ไปยังเนื้อหาหลัก

วิธีแสดงรายการวันที่ทั้งหมดระหว่างวันที่สองวันใน Excel

ในบางกรณีหากคุณมีวันที่เริ่มต้นและวันที่สิ้นสุดที่เฉพาะเจาะจงคุณอาจต้องระบุวันที่ทั้งหมดระหว่างวันที่กำหนดทั้งสองนี้ใน Excel ตอนนี้บทช่วยสอนนี้กำลังพูดถึงวิธีการแสดงรายการวันที่ทั้งหมดระหว่างวันที่สองวันใน Excel

แสดงวันที่ทั้งหมดระหว่างวันที่สองวันตามสูตร

แสดงวันที่ทั้งหมดระหว่างวันที่สองวันโดย VBA

แสดงวันที่ทั้งหมดระหว่างวันที่สองวันโดย Kutools for Excel ความคิดที่ดี 3


ที่นี่ฉันแนะนำสูตรที่สามารถแสดงรายการวันที่ทั้งหมดระหว่างวันที่กำหนดสองวันสำหรับคุณใน Excel ได้อย่างรวดเร็ว

1. พิมพ์วันที่เริ่มต้นและวันที่สิ้นสุดลงในสองเซลล์ที่นี่ฉันพิมพ์ลงในเซลล์ A1 และ A2 ดูภาพหน้าจอ:
doc-list- วันที่ทั้งหมดระหว่างสองวันที่ -1

2. จากนั้นไปที่เซลล์ C1 เพื่อพิมพ์สูตรนี้ = A1 + 1 เข้าไปแล้วคลิก เข้าสู่ สำคัญ. ดูภาพหน้าจอ:
doc-list- วันที่ทั้งหมดระหว่างสองวันที่ -2

3. จากนั้นในเซลล์ C2 พิมพ์สูตรนี้ =IF($A$1+ROW(A1)>=$A$2-1,"",C1+1) จากนั้นลากที่จับการป้อนอัตโนมัติลงไปที่เซลล์จนกระทั่งเซลล์ว่างปรากฏขึ้น ดูภาพหน้าจอ:

doc-list- วันที่ทั้งหมดระหว่างสองวันที่ -3       doc-list- วันที่ทั้งหมดระหว่างสองวันที่ -4

จากนั้นคุณจะเห็นวันที่ทั้งหมดระหว่างวันที่สองวันที่ระบุไว้ในคอลัมน์
doc-list- วันที่ทั้งหมดระหว่างสองวันที่ -5

หมายเหตุ

ในสูตรข้างต้น A1 คือวันที่เริ่มต้น A2 คือวันที่สิ้นสุดและ C1 คือวันที่แรกในช่วงวันที่


หากคุณสนใจรหัสมาโครคุณสามารถใช้ VBA ด้านล่างเพื่อแสดงรายการวันที่ทั้งหมดระหว่างวันที่กำหนดสองวันใน Excel

1. พิมพ์วันที่เริ่มต้นและวันที่สิ้นสุดลงในเซลล์สองเซลล์ที่นี่ฉันพิมพ์ในเซลล์ A1 และ B1 ดูภาพหน้าจอ:
doc-list- วันที่ทั้งหมดระหว่างสองวันที่ -6

2 กด Alt + F11 กุญแจเพื่อเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง

3 จากนั้นคลิก สิ่งที่ใส่เข้าไป > โมดูล และคัดลอกและวางโค้ด VBA ด้านล่างลงใน popping โมดูล หน้าต่าง

VBA: แสดงวันที่ทั้งหมดระหว่างวันที่สองวัน

Sub WriteDates()
	'Updateby20150305
	Dim rng As Range
	Dim StartRng As Range
	Dim EndRng As Range
	Dim OutRng As Range
	Dim StartValue As Variant
	Dim EndValue As Variant
	xTitleId     = "KutoolsforExcel"
	Set StartRng = Application.Selection
	Set StartRng = Application.InputBox("Start Range (single cell):", xTitleId, StartRng.Address, Type: = 8)
	Set EndRng   = Application.InputBox("End Range (single cell):", xTitleId, Type: = 8)
	Set OutRng   = Application.InputBox("Out put to (single cell):", xTitleId, Type: = 8)
	Set OutRng   = OutRng.Range("A1")
	StartValue   = StartRng.Range("A1").Value
	EndValue     = EndRng.Range("A1").Value
	If EndValue - StartValue <= 0 Then
		Exit Sub
		End If
		ColIndex = 0
		For i = StartValue To EndValue
			OutRng.Offset(ColIndex, 0) = i
			ColIndex = ColIndex + 1
		Next
	End Sub

4 คลิก วิ่ง or F5 เพื่อเรียกใช้ VBA และกล่องโต้ตอบจะปรากฏขึ้นเพื่อให้คุณเลือกวันที่เริ่มต้นจากนั้นคลิก OKจากนั้นเลือกวันที่สิ้นสุดในกล่องโต้ตอบการเปิดที่สอง ดูภาพหน้าจอ:

doc-list- วันที่ทั้งหมดระหว่างสองวันที่ -7          doc-list- วันที่ทั้งหมดระหว่างสองวันที่ -8

5 คลิก OKจากนั้นเลือกเซลล์เพื่อระบุวันที่จากนั้นคลิก OK. ตอนนี้คุณสามารถดูวันที่ทั้งหมดระหว่างสองวันที่แสดงอยู่ ดูภาพหน้าจอ:

doc-list- วันที่ทั้งหมดระหว่างสองวันที่ -9         doc-list- วันที่ทั้งหมดระหว่างสองวันที่ -10

หมายเหตุ: รายการที่สร้างโดย VBA นี้ประกอบด้วยวันที่เริ่มต้นและวันที่สิ้นสุด


จริงๆแล้วถ้าคุณติดตั้ง Kutools สำหรับ Excel - เครื่องมือเพิ่มที่มีประโยชน์คุณยังสามารถใช้ไฟล์ แทรกข้อมูลสุ่ม เพื่อแก้ปัญหานี้

Kutools สำหรับ Excel, ที่มีมากกว่า 300 ฟังก์ชัน Excel ที่มีประโยชน์เพิ่มประสิทธิภาพในการทำงานและประหยัดเวลาในการทำงานของคุณ

หลังจาก ติดตั้งฟรี Kutools สำหรับ Excel โปรดทำดังนี้:

1. เลือกคอลัมน์ที่คุณต้องการแสดงวันที่ระหว่างสองวันที่แล้วคลิก Kutools > สิ่งที่ใส่เข้าไป > แทรกข้อมูลสุ่ม. ดูภาพหน้าจอ:
doc ใส่ข้อมูลสุ่ม 1

2. จากนั้นใน แทรกข้อมูลสุ่ม โต้ตอบคลิก วันที่ จากนั้นเลือกวันที่เริ่มต้นและวันที่สิ้นสุดจาก จาก และ To รายการแล้วอย่าลืมตรวจสอบ วันทำงาน, สุดสัปดาห์ และ ค่าเฉพาะ ช่องทำเครื่องหมาย ดูภาพหน้าจอ:
doc-list- วันที่ทั้งหมดระหว่างสองวันที่ -12

3 คลิก Ok เพื่อปิดกล่องโต้ตอบและอื่น ๆ Kutools สำหรับ Excel กล่องโต้ตอบจะปรากฏขึ้นเพียงคลิก ใช่. จากนั้นคุณสามารถดูวันที่ระหว่างวันที่เริ่มต้นและวันที่สิ้นสุดได้ ดูภาพหน้าจอ:

doc-list- วันที่ทั้งหมดระหว่างสองวันที่ -13           doc-list- วันที่ทั้งหมดระหว่างสองวันที่ -14

4. ตอนนี้คุณต้องเรียงลำดับรายการวันที่ตามลำดับที่คุณต้องการ คลิก ข้อมูล > เรียงลำดับจากเก่าที่สุดไปหาใหม่ที่สุด. จากนั้นคุณจะเห็นวันที่เรียงลำดับจากวันที่เก่าที่สุดไปยังวันที่ใหม่ล่าสุด ดูภาพหน้าจอ:

doc-list- วันที่ทั้งหมดระหว่างสองวันที่ -15          doc-list- วันที่ทั้งหมดระหว่างสองวันที่ -16

กับ แทรกข้อมูลสุ่ม ยูทิลิตี้คุณยังสามารถแทรกจำนวนเต็มสุ่มสตริงสุ่มและเวลาสุ่มได้อีกด้วย คลิกที่นี่เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับแทรกข้อมูลสุ่ม


บทความญาติ:


สุดยอดเครื่องมือเพิ่มผลผลิตในสำนักงาน

🤖 Kutools AI ผู้ช่วย: ปฏิวัติการวิเคราะห์ข้อมูลโดยยึดตาม: การดำเนินการที่ชาญฉลาด   |  สร้างรหัส  |  สร้างสูตรที่กำหนดเอง  |  วิเคราะห์ข้อมูลและสร้างแผนภูมิ  |  เรียกใช้ฟังก์ชัน Kutools...
คุณสมบัติยอดนิยม: ค้นหา เน้น หรือระบุรายการที่ซ้ำกัน   |  ลบแถวว่าง   |  รวมคอลัมน์หรือเซลล์โดยไม่สูญเสียข้อมูล   |   รอบโดยไม่มีสูตร ...
การค้นหาขั้นสูง: VLookup หลายเกณฑ์    VLookup หลายค่า  |   VLookup ข้ามหลายแผ่น   |   การค้นหาที่ไม่ชัดเจน ....
รายการแบบเลื่อนลงขั้นสูง: สร้างรายการแบบหล่นลงอย่างรวดเร็ว   |  รายการแบบหล่นลงขึ้นอยู่กับ   |  เลือกหลายรายการแบบหล่นลง ....
ผู้จัดการคอลัมน์: เพิ่มจำนวนคอลัมน์เฉพาะ  |  ย้ายคอลัมน์  |  สลับสถานะการมองเห็นของคอลัมน์ที่ซ่อนอยู่  |  เปรียบเทียบช่วงและคอลัมน์ ...
คุณสมบัติเด่น: กริดโฟกัส   |  มุมมองการออกแบบ   |   บาร์สูตรใหญ่    สมุดงานและตัวจัดการชีต   |  ห้องสมุดทรัพยากร (ข้อความอัตโนมัติ)   |  เลือกวันที่   |  รวมแผ่นงาน   |  เข้ารหัส/ถอดรหัสเซลล์    ส่งอีเมลตามรายการ   |  ซุปเปอร์ฟิลเตอร์   |   ตัวกรองพิเศษ (กรองตัวหนา/ตัวเอียง/ขีดทับ...) ...
ชุดเครื่องมือ 15 อันดับแรก12 ข้อความ เครื่องมือ (เพิ่มข้อความ, ลบอักขระ, ... )   |   50 + แผนภูมิ ประเภท (แผนภูมิ Gantt, ... )   |   40+ ใช้งานได้จริง สูตร (คำนวณอายุตามวันเกิด, ... )   |   19 การแทรก เครื่องมือ (ใส่ QR Code, แทรกรูปภาพจากเส้นทาง, ... )   |   12 การแปลง เครื่องมือ (ตัวเลขเป็นคำ, การแปลงสกุลเงิน, ... )   |   7 ผสานและแยก เครื่องมือ (แถวรวมขั้นสูง, แยกเซลล์, ... )   |   ... และอื่น ๆ

เพิ่มพูนทักษะ Excel ของคุณด้วย Kutools สำหรับ Excel และสัมผัสประสิทธิภาพอย่างที่ไม่เคยมีมาก่อน Kutools สำหรับ Excel เสนอคุณสมบัติขั้นสูงมากกว่า 300 รายการเพื่อเพิ่มประสิทธิภาพและประหยัดเวลา  คลิกที่นี่เพื่อรับคุณสมบัติที่คุณต้องการมากที่สุด...

รายละเอียด


แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
Comments (9)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
How to loop this vba code (1000 rows for example) ?
This comment was minimized by the moderator on the site
Sorry for reply such late, but I do not understand your question, the VBA only for listing dates between a date range, why need to loop the code?
This comment was minimized by the moderator on the site
Firat - did you solve your issue? I have exactly the same issue and I cannot get the result in the row instead of the column.
This comment was minimized by the moderator on the site
If you invert this line you can make it work :


OutRng.Offset(ColIndex, 0) = i to OutRng.Offset(0, ColIndex) = i
This comment was minimized by the moderator on the site
Why do not try to transpose the column result to row?
This comment was minimized by the moderator on the site
i tried the VBA code it worked.. Thanks for sharing. Similarly is it possible to pase it along columns/ horizontally?
This comment was minimized by the moderator on the site
Hello, if you want to list dates in a row horizontally, you just need to use the vba code to list the dates, and copy the results and paste transpose.
This comment was minimized by the moderator on the site
Hello, Thanks for sharing a great code. I would like to ask one question though. I am using this VBA code you shared. 1) Can I list all the other cells in the same row with the dates? 2) Can we define the starting date cell and ending date cell and the cell that the new information will be written? I am asking these questions because I have 30 rows. Each row has data for different people. Cell G is a starting date and Cell H is an ending date. Other cells contains some information. I would like this to be listed in a new cell as all the dates between these cells. For example (just showing demonstration, so only G and H cells written below-I is where the list appears): Row 2 Person A 28/05/2017 05/06/2017 28/05/2017 Row 3 Person A 28/05/2017 05/06/2017 29/05/2017 Row 4 Person A 28/05/2017 05/06/2017 30/05/2017 Row 5 Person A 28/05/2017 05/06/2017 31/05/2017 Row 6 Person A 28/05/2017 05/06/2017 01/06/2017 Row 7 Person A 28/05/2017 05/06/2017 02/06/2017 Row 8 Person A 28/05/2017 05/06/2017 03/06/2017 Row 9 Person A 28/05/2017 05/06/2017 04/06/2017 Row 10 Person A 28/05/2017 05/06/2017 05/06/2017 Row 11 Person B 23/05/2017 31/05/2017 23/05/2017 Row 12 Person B 23/05/2017 31/05/2017 24/05/2017 Row 13 Person B 23/05/2017 31/05/2017 25/05/2017 Row 14 Person B 23/05/2017 31/05/2017 26/05/2017 and so on...
This comment was minimized by the moderator on the site
Can we use text box instead of in box in macro
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations