انتقل إلى المحتوى الرئيسي

كيفية سرد جميع التواريخ بين تاريخين في إكسيل؟

في بعض الحالات ، إذا كان لديك تاريخ البدء المحدد وتاريخ الانتهاء ، فقد تحتاج إلى سرد جميع التواريخ بين هذين التاريخين المحددين في Excel. يتحدث هذا البرنامج التعليمي الآن عن طرق سرد جميع التواريخ بين تاريخين في Excel.

سرد كافة التواريخ بين تاريخين بواسطة الصيغ

سرد كافة التواريخ بين تاريخين بواسطة VBA

قائمة جميع التواريخ بين تاريخين بواسطة Kutools for Excel فكرة جيدة 3


أقدم هنا صيغًا يمكنها سرد جميع التواريخ بسرعة بين تاريخين محددين في Excel.

1. اكتب تاريخي البدء والانتهاء في خليتين ، وهنا أكتبهما في الخلية A1 و A2. انظر لقطة الشاشة:
قائمة المستندات - جميع التواريخ - بين تاريخين - 1

2. ثم انتقل إلى الخلية C1 لكتابة هذه الصيغة = A1 + 1 في ذلك ، ثم انقر فوق أدخل مفتاح. انظر لقطة الشاشة:
قائمة المستندات - جميع التواريخ - بين تاريخين - 2

3. ثم في الخلية C2 ، اكتب هذه الصيغة =IF($A$1+ROW(A1)>=$A$2-1,"",C1+1) بداخلها ، ثم اسحب مقبض الملء التلقائي لأسفل إلى الخلايا حتى تظهر خلية فارغة. انظر لقطات الشاشة:

قائمة المستندات - جميع التواريخ - بين تاريخين - 3       قائمة المستندات - جميع التواريخ - بين تاريخين - 4

ثم يمكنك رؤية جميع التواريخ بين تاريخين محددين مدرجة في العمود.
قائمة المستندات - جميع التواريخ - بين تاريخين - 5

ملحوظة:

في الصيغ أعلاه ، A1 هو تاريخ البدء ، و A2 هو تاريخ الانتهاء ، و C1 هو التاريخ الأول بين نطاق التاريخ.


إذا كنت مهتمًا برمز الماكرو ، فيمكنك استخدام VBA أدناه لسرد جميع التواريخ بين تاريخين معينين في Excel.

1. اكتب تاريخ البدء وتاريخ الانتهاء في خليتين ، وهنا اكتب في الخلية A1 و B1. انظر لقطة الشاشة:
قائمة المستندات - جميع التواريخ - بين تاريخين - 6

2. صحافة Alt + F11 مفاتيح لفتح ميكروسوفت فيسوال باسيك للتطبيقات نافذة.

3. ثم اضغط إدراج > وحدة وانسخ والصق أدناه رمز 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، ثم حدد تاريخ الانتهاء في مربع الحوار الثاني. انظر لقطة الشاشة:

قائمة المستندات - جميع التواريخ - بين تاريخين - 7          قائمة المستندات - جميع التواريخ - بين تاريخين - 8

5. انقر OK، ثم حدد خلية لإخراج التواريخ ، ثم انقر فوق OK. يمكنك الآن رؤية جميع التواريخ بين تاريخين مدرجة. انظر لقطات الشاشة:

قائمة المستندات - جميع التواريخ - بين تاريخين - 9         قائمة المستندات - جميع التواريخ - بين تاريخين - 10

ملاحظات: تتضمن القائمة التي تم إنشاؤها بواسطة VBA تاريخ البدء وتاريخ الانتهاء.


في الواقع ، إذا قمت بتثبيت كوتولس ل إكسيل - أداة إضافة يدوية ، يمكنك أيضًا استخدام ملف أدخل بيانات عشوائية لحل هذه المشكلة.

كوتولس ل إكسيل, مع أكثر من 300 وظائف Excel سهلة الاستخدام ، وتعزز كفاءة عملك وتوفر وقت عملك.

بعد تركيب مجاني Kutools for Excel ، يرجى القيام بما يلي:

1. حدد العمود الذي تريد سرد التواريخ بين تاريخين ، وانقر فوق كوتولس > إدراج > أدخل بيانات عشوائية. انظر لقطة الشاشة:
doc أدخل بيانات عشوائية 1

2. ثم في أدخل بيانات عشوائية الحوار، انقر فوق التاريخ علامة التبويب ، ثم حدد تاريخي البدء والانتهاء من ملف من و Tقائمة س ، ثم تذكر للتحقق ساعات العمل, عطلة نهاية الاسبوع و قيم فريدة مربعات الاختيار. انظر لقطة الشاشة:
قائمة المستندات - جميع التواريخ - بين تاريخين - 12

3. انقر Ok لإغلاق الحوار ، وآخر كوتولس ل إكسيل ينبثق الحوار ، فقط انقر نعم. ثم يمكنك رؤية التواريخ بين تاريخ البدء وتاريخ الانتهاء مدرجة. انظر لقطات الشاشة:

قائمة المستندات - جميع التواريخ - بين تاريخين - 13           قائمة المستندات - جميع التواريخ - بين تاريخين - 14

4. الآن أنت بحاجة إلى فرز قائمة التاريخ بالترتيب الذي تحتاجه. انقر البيانات > فرز الأقدم إلى الأحدث. ثم يمكنك مشاهدة التواريخ مصنفة من التاريخ الأقدم إلى التاريخ الأحدث. انظر لقطات الشاشة:

قائمة المستندات - جميع التواريخ - بين تاريخين - 15          قائمة المستندات - جميع التواريخ - بين تاريخين - 16

بدافع أدخل بيانات عشوائية الأداة المساعدة ، يمكنك أيضًا إدخال عدد صحيح عشوائي وسلسلة عشوائية ووقت عشوائي وما إلى ذلك. انقر هنا لمعرفة المزيد عن إدراج بيانات عشوائية.


مقالات ذات صلة:


أفضل أدوات إنتاجية المكتب

🤖 مساعد Kutools AI: إحداث ثورة في تحليل البيانات على أساس: التنفيذ الذكي   |  إنشاء التعليمات البرمجية  |  إنشاء صيغ مخصصة  |  تحليل البيانات وإنشاء الرسوم البيانية  |  استدعاء وظائف Kutools...
الميزات الشعبية: البحث عن التكرارات أو تمييزها أو تحديدها   |  حذف الصفوف الفارغة   |  دمج الأعمدة أو الخلايا دون فقدان البيانات   |   جولة بدون صيغة 
سوبر بحث: معايير متعددة VLookup    VLookup ذات القيمة المتعددة  |   VLookup عبر أوراق متعددة   |   بحث غامض ....
قائمة منسدلة متقدمة: إنشاء القائمة المنسدلة بسرعة   |  القائمة المنسدلة التابعة   |  قائمة منسدلة متعددة التحديد ....
مدير العمود: إضافة عدد محدد من الأعمدة  |  نقل الأعمدة  |  تبديل حالة رؤية الأعمدة المخفية  |  مقارنة النطاقات والأعمدة 
الميزات المميزة: التركيز على الشبكة   |  عرض تصميم   |   شريط الفورمولا الكبير    مدير المصنفات والأوراق   |  مكتبة الموارد (النص السيارات)   |  منتقي التاريخ   |  اجمع أوراق العمل   |  تشفير/فك تشفير الخلايا    إرسال رسائل البريد الإلكتروني عن طريق القائمة   |  سوبر تصفية   |   مرشح خاص (تصفية غامق / مائل / يتوسطه خط ...) ...
أفضل 15 مجموعة أدوات12 نص الأدوات (إضافة نص, إزالة الأحرف، ...)   |   +50 رسم الأنواع (مخطط جانت، ...)   |   40+ عملي الصيغ (احسب العمر على أساس تاريخ الميلاد، ...)   |   19 إدخال الأدوات (أدخل رمز الاستجابة السريعة, إدراج صورة من المسار، ...)   |   12 تحويل الأدوات (أرقام إلى كلمات, نتيجة تحويل عملة، ...)   |   7 دمج وتقسيم الأدوات (الجمع بين الصفوف المتقدمة, تقسيم الخلايا، ...)   |   ... و اكثر

عزز مهاراتك في Excel باستخدام Kutools for Excel، واختبر كفاءة لم يسبق لها مثيل. يقدم Kutools for Excel أكثر من 300 ميزة متقدمة لتعزيز الإنتاجية وتوفير الوقت.  انقر هنا للحصول على الميزة التي تحتاجها أكثر...

الوصف


يجلب Office Tab الواجهة المبوبة إلى Office ، ويجعل عملك أسهل بكثير

  • تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و 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