اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر

ربما لو أرفقت ملفا به النتائج المتوقعة (الشكل النهائي للشيت) نتوصل بإذن الله لما تريد

لأن المطلوب له أكثر من احتمال

وأبسطها أن تكتب في أول خلية رأسية وليكن B3

=D1

ثم في الخلية التي تحتها B4

=IFERROR(IF(B3+1<=F$1,B3+1,""),"")

مع سحب المعادلة لأسفل وتغيير تنسيق الخلايا إلى تاريخ

بالتوفيق

  • Like 1
  • تمت الإجابة
قام بنشر
Sub Test()
    Dim a
    a = GetDates(Range("D1").Value2, Range("F1").Value2)
    Range("D3").Resize(UBound(a)).Value = Application.Transpose(a)
End Sub

Function GetDates(ByVal startDate As Date, ByVal endDate As Date)
    Dim v() As Date, cnt As Long
    ReDim v(1 To CLng(endDate) - CLng(startDate) + 1)
    For cnt = LBound(v) To UBound(v)
        v(cnt) = CDate(startDate)
        startDate = CDate(CDbl(startDate) + 1)
    Next cnt
    GetDates = v
    If IsArray(v) Then Erase v
    cnt = Empty
End Function

 

or

Sub Test()
    Dim sDate As Date, eDate As Date, r As Long
    sDate = Range("D1").Value2
    eDate = Range("F1").Value2
    Range("D3:D" & Rows.Count).ClearContents
    Do Until sDate > eDate
        r = r + 1
        Range("D" & r + 2).Value = sDate
        sDate = sDate + 1
    Loop
End Sub

 

  • Like 2

انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد

يجب ان تكون عضوا لدينا لتتمكن من التعليق

انشئ حساب جديد

سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .

سجل حساب جديد

تسجيل دخول

هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.

سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information