ایجاد سوال
dark_mode
0 دوستدار 0 امتیاز منفی
25 visibility
موضوع: آفیس توسط:

برای برخی از اسناد، داشتن فهرستی از تاریخ هایی که می توانید به عنوان مبنای کار خود استفاده کنید، مفید است. به عنوان مثال، ممکن است مجبور باشید گزارشی ایجاد کنید که تمام تاریخ‌های بین هم‌اکنون تا پایان سال را به همراه نام شخص یا نام پروژه در سمت راست تاریخ فهرست می‌کند. البته نقطه شروع این است. دریافت لیست تاریخ ها

چند راه وجود دارد که می توانید به تهیه لیست نزدیک شوید. یکی از روش های آسان استفاده از اکسل در کنار Word است. ویژگی تکمیل خودکار اکسل تولید یک لیست از تاریخ ها را به طرز شگفت انگیزی آسان می کند. هنگامی که لیست را در اکسل دارید، می توانید آن را کپی کرده و در سند Word جایگذاری کنید، یا می توانید از ادغام نامه برای ادغام تاریخ ها در سند استفاده کنید (اگر رویکرد برای نیازهای شما مناسب است).

اگر به دلایلی ترجیح می دهید از اکسل استفاده نکنید، بهترین راه حل استفاده از ماکرو است. ماکرو زیر به سرعت فهرستی از تمام تاریخ های سال 2021 ایجاد می کند:

Sub PrintYearDays()
    Dim StartDate As Date
    Dim T As Integer

    StartDate = #12/31/2020#

    For T = 1 To 365
        Selection.TypeText Text:=Format(StartDate + T, _
          "mmmm dd yyyy")
        Selection.TypeParagraph
    Next T
End Sub

توجه داشته باشید که ماکرو با تنظیم متغیر StartDate برابر با آخرین روز سال 2020 کار می کند و سپس حلقه For ... بعدی را تا 365 روز طی می کند. اگر می خواهید کار ماکرو را برای محدوده تاریخ دیگری داشته باشید، فقط تاریخ شروع را به همراه مقدار پایانی حلقه For ... بعدی تغییر دهید.

اگر نیاز به ایجاد لیست تاریخ دارید، و هرگز نمی دانید تاریخ شروع و پایان در محدوده چه خواهد بود، یک رویکرد کلان متفاوت منطقی تر است. ماکرو زیر از شما تاریخ شروع و پایان را می خواهد:

Sub ListDates()
    Dim ListDate as Date
    Dim StartDate As Date
    Dim EndDate As Date
    Dim Repeats As Integer

    "Gets user input
    StartDate = InputBox("Please enter the starting date.", _
      "Start Date", "Start Date")
    EndDate = InputBox("Please enter the ending date.", _
      "End Date", "End Date")

    "Enters the start date in the document
    Selection.TypeText Text:=Format(StartDate, _
      "dddd, MMMM dd, yyyy")
    Selection.TypeText (vbCr & vbLf)

    "Determines the number of dates to print
    Repeats = DateDiff("d", StartDate, EndDate)

    "Loops to print the list of dates
    For i = 1 To Repeats
        ListDate = DateAdd("d", i, StartDate)
        Selection.TypeText Text:=Format(ListDate, _
          "dddd, MMMM dd, yyyy")
        Selection.TypeParagraph
    Next i
End Sub

متغیرهای StartDate و EndDate که توسط ورودی شما تنظیم می شوند، تعیین می کنند که حلقه For... Next چند بار تکرار شود.

اگر خواستی، با این لینک از ما حمایت کن

پاسخ شما

looks_5نام شما برای نمایش - اختیاری
حریم شخصی : آدرس ایمیل شما محفوظ میماند و برای استفاده های تجاری و تبلیغاتی به کار نمی رود
عدد چهار رقمی در تصویر را وارد کنید

برای جلوگیری از این تایید در آینده, لطفا وارد شده یا ثبت نام کنید.
اگر حساب گوگل دارید به راحتی وارید شوید

0 پاسخ وجود دارد

سوال مشابهی یافت نشد

برای دسترسی راحت به مطالب سایت ، اپلیکیشن سایت را نصب کنید
و لطفا بعد از نصب امتیاز دهید. با تشکر از حمایت شما

23.2k سوال

8.5k پاسخ

613 دیدگاه

10.8k کاربر

204 نفر آنلاین
0 عضو و 204 مهمان در سایت حاضرند
بازدید امروز: 11332
بازدید دیروز: 13001
بازدید کل: 19465626
...