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


روش های تبدیل تاریخ شمسی به میلادی در گوگل شیت
دو روش متداول تبدیل تاریخ شمسی به میلادی در گوگل شیت به شرح زیر است.
- فرمولنویسی در محیط گوگلشیت
- تعریف تابع اختصاصی تبدیل تاریخ

تفاوت این دو روش در تعداد استفاده از آنها برای تبدیل تاریخ است. اگر از فرمولنویسی در گوگلشیت استفاده کنیم، محاسبه برای هر تبدیل نیاز به تکرار نوشتن فرمول در هر سلول دارد. اما با نوشتن یک تابع اختصاصی در گوگلشیت میتوانیم آن را برای تبدیل تاریخ به هر تعداد استفاده کنیم.
با این حال انجام بدون خطای هر روش نیاز به یادگیری ترفندهای کار در فضای گوگلشیت از سطح مقدماتی تا پیشرفته دارد. بنابراین پیشنهاد میکنیم همراه با مطالعه ادامه مطلب، ابتدا فیلم آموزش گوگلشیت مقدماتی در فرادرس مشاهده کنید که لینک آن را برای دسترسی بهتر شما در زیر آوردهایم. سپس برای تکمیل مسیر یادگیری، فیلم آموزش گوگلشیت پیشرفته در فرادرس و فیلم آموزش گوگلشیت تکمیلی در فرادرس را نیز مشاهده کنید.
تبدیل تاریخ شمسی به میلادی در گوگل شیت با فرمول
فرمولنویسی در گوگل شیت یکی از روشهای سریع تبدیل تاریخ است. در این روش میتوانیم بعد از نوشتن فرمول در یک سلول، آن را در دیگر سلولها هم کپی کنیم. اما از آنجا که روشی پیچیده است نیاز به یادگیری کامل مهارت فرمولنویسی در این فضا داریم. در غیر اینصورت ممکن است با پیام خطا روبرو شویم.
مراحل انجام کار
فرمول کلی برای تبدیل تاریخ شمسی به میلادی در گوگل شیت برای سلول نمونه A2 به شرح زیر است.
=INDEX(IMPORTHTML("https://date-today.com/en/shamsi-"&INDEX(SPLIT(A2,"/"),1,3)*1&"-"&INDEX(SPLIT(A2,"/"),1,2)*1&"-"&INDEX(SPLIT(A2,"/"),1,1)*1&"-to-gregorian-calendar.html","table",1),4,2)در این فرمول فقط کافی است، آدرس سلول دارای تاریخ را بهجای A2 بنویسیم. مراحل انجام کار برای تاریخ فرضی ۱۰ شهریور ۱۴۰۵ به شکل زیر است.
۱. ابتدا فرمول را در سلول دلخواه B2 مینویسیم. بعد از فشار دادن دکمه ENTER چون فرمول نیاز به دسترسی از یک لینک خارجی دارد، ممکن است پیامی مانند تصویر زیر ببینیم. بنابراین اگر پیامی دریافت کردیم، دکمه «Allow Access» را میزنیم.

بعد از اجازه دسترسی، تاریخ به شکل یک عدد نمایش داده میشود که به علت تنظیم نبودن فرمت سلول است.

۲. برای نمایش صحیح تاریخ، از زبانه «Format» به بخش «Number» و سپس «Custom date and time» میرویم.

۳. در پنجره باز شده یکی از فرمتهای نمایش تاریخ را به دلخواه انتخاب میکنیم.

۴. نتیجه نهایی به شکل تصویر زیر در میآید.

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

پیشنهاد اول برای یادگیری مشاهده فیلمهای آموزشی منتخب زیر است.
- فیلم آموزش فرمولنویسی در گوگلشیت همراه گواهینامه در فرادرس
- فیلم آموزش گوگلشیت مقدماتی همراه گواهینامه در فرادرس
- فیلم آموزش گوگلشیت پیشرفته همراه گواهینامه در فرادرس
- فیلم آموزش گوگلشیت تکمیلی همراه گواهینامه در فرادرس
همچنین در مجموعه فیلم آموزشی زیر نیز امکان انتخاب موارد بیشتر با توجه به علاقهمندی وجود دارد.
تبدیل تاریخ شمسی به میلادی در گوگل شیت با تعریف تابع
در این روش به جای نوشتن یک فرمول طولانی، تابع اختصاصی ایجاد میکنیم. این تابع را یک بار تعریف میکنیم و هر بار میتوانیم با فراخوانی آن از فهرست توابع گوگلشیت، تبدیل تاریخ را بهراحتی انجام دهیم. نوشتن تابع اختصاصی انتخابی مناسب برای افرادی است که بهصورت مرتب نیاز به تبدیل تاریخ شمسی به میلادی در گوگل شیت دارند. با این حال برای این کار نیز لازم است با کدنویسی در فضای گوگل شیت آشنا باشیم که در ادامه به آن میپردازیم.
مراحل انجام کار
برای تعریف تابع اختصاصی در Google Sheets مخصوص تبدیل تاریخ شمسی به میلادی در گوگل شیت مراحل زیر را انجام میدهیم.
۱. برای نمایش صحیح تاریخ بعد از انتخاب سلول، از زبانه «Format» در بخش «Number» روی گزینه «Plain text» کلیک میکنیم.

۲. از بخش «Extentions» روی «Apps Script» کلیک میکنیم.

۳. کد زیر را در محیط «Apps Script» وارد میکنیم.
function JALALI_TO_GREGORIAN(jalaliDate) {
if (jalaliDate === null || jalaliDate === "") return "";
var parts = String(jalaliDate).trim().split("/");
if (parts.length !== 3) return "Invalid date";
var jy = parseInt(parts[0], 10);
var jm = parseInt(parts[1], 10);
var jd = parseInt(parts[2], 10);
if (isNaN(jy) || isNaN(jm) || isNaN(jd)) {
return "Invalid date";
}
var jy2 = jy - 979;
var days = 365 * jy2
+ Math.floor(jy2 / 33) * 8
+ Math.floor((jy2 % 33 + 3) / 4);
if (jm <= 6) {
days += (jm - 1) * 31;
} else {
days += (jm - 7) * 30 + 186;
}
days += jd - 1;
var gDays = days + 79;
var gy = 1600 + 400 * Math.floor(gDays / 146097);
gDays %= 146097;
var leap = true;
if (gDays >= 36525) {
gDays--;
gy += 100 * Math.floor(gDays / 36524);
gDays %= 36524;
if (gDays >= 365) {
gDays++;
} else {
leap = false;
}
}
gy += 4 * Math.floor(gDays / 1461);
gDays %= 1461;
if (gDays >= 366) {
leap = false;
gDays--;
gy += Math.floor(gDays / 365);
gDays %= 365;
}
var monthDays = [
31,
leap ? 29 : 28,
31,
30,
31,
30,
31,
31,
30,
31,
30,
31
];
var gm = 1;
while (gDays >= monthDays[gm - 1]) {
gDays -= monthDays[gm - 1];
gm++;
}
var gd = gDays + 1;
return new Date(gy, gm - 1, gd);
}محیط گوگلشیت بعد از ورود صحیح کد به شکل تصویر نمونه زیر است و بدون خطا اجرا میشود.

۴. کد را در گوگلشیت ذخیره میکنیم.

۵. به محیط گوگلشیت برمیگردیم. اگر تاریخ مورد نظر در سلول A1 باشد، در سلول دلخواه فرمول زیر را مینویسیم.
=JALALI_TO_GREGORIAN(A1)۶. با زدن دکمه ENTER مانند تصویر زیر تبدیل تاریخ انجام میشود.

۷. برای نمایش واضحتر تاریخ میتوانیم فرمت نمایش آن را از مسیر Format>Number> Custom date and time به دلخواه تغییر دهیم. تغییر نهایی بهعنوان نمونه به شکل تصویر زیر در میآید.

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












