نمایش نتایج: از شماره 1 تا 1 , از مجموع 1

موضوع: تبديل تاريخهاي شمسي و ميلادي با يک جدول ساده

  1. #1


    آخرین بازدید
    2024/01/21
    تاریخ عضویت
    November 2013
    محل سکونت
    تهران
    نوشته ها
    1,519
    امتیاز
    6121
    سپاس
    2,884
    سپاس شده
    4,889 در 1,381 پست
    سطح اکسل
    71.67 %

    تبديل تاريخهاي شمسي و ميلادي با يک جدول ساده

    سلام،
    چند وقت پيش تو اين
    لينک يک مطلب نوشته بودم تحت عنوان: "محاسبات روي تاريخ شمسي بدون استفاده از add-in يا توابع شمسي"
    به فکرم رسيد همان جدول موجود در آن را جهت تبديل تاريخها استفاده کنم.
    يک فايل ضميمه مي کنم، ديدنش خالي از لطف نيست
    اين هم توضيحاتي در خصوص فايل پيوست:
    فايل را که باز کرديد مراجعه کنيد به محدوده محاسبات
    همانطور که مي دانيد پشت سر هر تاريخ ميلادي در اکسل يک شماره سريال عددي وجود دارد.
    ستون وسط جدول موجود در محدوده محاسبات در اصل شماره سريال آخرين روز سالهاي ميلادي است، اگر فرمت آن را DATE کنيد خواهيد ديد که همگي روز 19 يا 20 مارس را نشان خواهند داد.
    دو طرف آن سال هاي شمسي متناظر آنها را نوشته ام - به اين خاطر دو طرف نوشته ام که بتوانم دو جور از فرمول VLOOKUP استفاده کنم، يک بار ستون اول ميلادي باشد و يک بار شمسي.
    حال در زير محدوده خانه هايي در نظر گرفته ام، در خانه هاي زرد رنگ تاريخها را طبق قاعده تعيين شده وارد مي کنيد.
    تاريخ شمسي در شش رقم بدون مميز
    تاريخ ميلادي به طور کامل و با مميز
    سپس در خانه هاي سبز رنگ طبق فرمول نويسي انجام شده معادل تاريخها به دست مي آيد.
    توجه کنيد که در فرمولها از محدوده هاي نام گذاري شده استفاده کرده ام، اين کار مخصوصا" براي آن بوده که در صورت اضافه يا حذف سطرها در شيت يک وقت احيانا" فرمولها به هم نريزد.
    حال يک مرحله کد نويسي به فايل اضافه کرده ام.
    خوب، حالا برگرديد به ابتداي صفحه
    فرض کنيم ما در يک ستون تاريخهاي ميلادي (يا شمسي) وارد مي کنيم، و در ستون بغلي مي خواهيم معادل شمسي (يا ميلادي) آنها را به دست بياوريم.
    يک راه اين است که آن فرمولهايي که در خانه هاي سبز محدوده محاسبات نوشته بودم را در همه ستون بغلي تکرار کنيم! که البته با توجه به حجم فرمول غير منطقي بوده و احتمالا" اکسل هنگ خواهد کرد!
    راه ديگر اين است که کدي بنويسيم که تک تک تاريخها را در خانه هاي زرد محدوده محاسبات جايگزين کرده و سپس معادل محاسبه شده در خانه هاي سبز را به ستون بغل انتقال دهد.
    توجه کنيد که ستونهايي که گفتم را نيز نامگذاري کرده ام تا مشکلي پيش نيايد.
    ضمنا" يک کليد جداگانه هم گذاشته ام که در صورت انتخاب خانه اي با تاريخ ميلادي در يک مسج باکس معادل شمسي آن را به شما مي گويد. (اين يکي هم باز با جايگزين کردن در همان محدوده محاسبات معادل را به دست مي آورد و به هر حال اين هم ايده اي است! گفتم شايد جالب باشد).
    من از اين روش در فايلهاي پروژه هاي کوچکم استفاده مي کنم و خيلي برايم جذاب است، چون به هيچ جايي ربطي ندارد! نه ADD-IN نه اضافه کردن ماژولهاي تاريخ شمسي به فايل و نه ....
    ضمنا" يک کارايي بارز آن استفاده از کليه فيلترهاي تاريخ ميلادي است بدين طريق که مثلا" شما تمام تاريخهاي دلخواه خود را به شمسي وارد مي کنيد. سپس کليد تبديل را زده و معادل ميلادي را در ستون بغل به دست مي آوريد، حال کليه فيلترها (و علاوه بر آن جمع و تفريقها و ....) را روي ستونهاي ميلادي با قابليت خود اکسل انجام مي دهيد، ضمن اينکه در همه حال معادل شمسي آن را جهت مشاهده در ستون بغل داريد.
    فقط کافي است در ابتداي تنظيم پروژه خود جدول مربوطه را يک کناري ايجاد و نام گذاري کنيد.
    فکر کنم براي دوستاني که آشنايي ابتدايي با VBA داشته باشند جالب باشد.
    ضمن اينکه مي توانيد کد ها را در WORKBOOK_OPEN هم بنويسيد که در هنگام باز شدن فايل نيز يک RE CHECK در تمام تاريخهاي ثبت شده انجام گردد
    اين هم فايل تقديم شما دوستان:
    اخطار: این یک موضوع قدیمی است
    به دلیل قدیمی بودن موضوع، ممکن است برخی فایل های ضمیمه به درستی کار نکنند. لطفا در صورت عدم ضرورت، از بالا آوردن موضوعات قدیمی خودداری نمایید.
    فايل هاي پيوست شده فايل هاي پيوست شده
    ویرایش توسط Ali Parsaei : 2015/07/11 در ساعت 01:19


  2.  


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. فرمول ايجاد تاريخ شمسي
    توسط kindcrasher در انجمن توابع اکسل - Excel Functions
    پاسخ ها: 14
    آخرين نوشته: 2018/09/16, 11:39
  2. محاسبات روي تاريخ شمسي بدون استفاده از add-in يا توابع شمسي
    توسط Ali Parsaei در انجمن توابع اکسل - Excel Functions
    پاسخ ها: 8
    آخرين نوشته: 2014/10/26, 17:06
  3. اصلاح حرف ي فارسي
    توسط Ali Parsaei در انجمن سوالات پیرامون ويژوال بيسيك - VBA Questions
    پاسخ ها: 15
    آخرين نوشته: 2014/04/27, 17:00
  4. كم كردن تاريخ شمسي
    توسط ranjbarmasumeh در انجمن add-ins
    پاسخ ها: 17
    آخرين نوشته: 2011/09/05, 16:48
  5. آموزشی راه حل هاي كاربردن تاريخ شمسي
    توسط exceliran در انجمن تالار آموزش اکسل
    پاسخ ها: 0
    آخرين نوشته: 2010/03/05, 09:17

بازدید کنندگان با جستجو های زیر این صفحه را پیدا کرده اند

انجمن اكسل ايران , اكسل , اكسس , سوال و جواب اكسل , سوال اكسس , انجمن اكسل ايران , توابع اكسل, آموزش اكسل, آموزش اكسس, VBA, ويژوال بيسيك

کلمات کلیدی این موضوع

علاقه مندی ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  
  • BB code ها فعال هستند
  • شکلک ها فعال هستند
  • کد [IMG] فعال است
  • کد [VIDEO] فعال است
  • کد HTML غیر فعال است
با ما در تماس باشيد