فهرست مطالب
استفاده های مختلفی از Excel وجود دارد. تابع و فرمول ویژه جالب در Microsoft Excel ممکن است جدایی بین دو شهر یا مکان خاص در این سیاره را تعیین کند. بسیار مهم است که بتوانید فاصله را بین هر دو مکان روی نقشه محاسبه کنید. این به شما امکان می دهد مسافت واقعی را محاسبه کنید و تخمین مناسبی از مدت زمان سفر شما به شما ارائه می دهد. اما با اکسل به راحتی می توانیم این کار را انجام دهیم. در این مقاله چندین روش برای محاسبه فاصله بین دو شهر در اکسل نشان خواهیم داد.
دانلود کتاب تمرین تمرین
می توانید کتاب کار را دانلود کرده و با آنها تمرین کنید.
محاسبه فاصله بین دو شهر.xlsm
معرفی مجموعه داده
برای محاسبه فاصله بین دو شهر، ابتدا باید مجموعه داده را آماده کنیم. فرض کنید ما دو شهر داریم لس آنجلس که یک شهر بزرگ در ایالت کالیفرنیا است، و پاسکو که شهر واشنگتن است. . اکنون باید فاصله بین آنها را پیدا کنیم. برای این کار باید عرض جغرافیایی و طول جغرافیایی هر دو شهر را بدانیم. ما به سادگی می توانیم طول و عرض جغرافیایی هر شهر را با اکسل پیدا کنیم. بیایید ببینیم چگونه میتوانیم این کار را انجام دهیم.
STEPS:
- ابتدا، سلولی را که نام شهرها را در آن قرار میدهیم انتخاب کنید. در مورد ما، سلولهای B5 و B6 را انتخاب میکنیم.
- ثانیاً، به تب Data ازribbon.
- سوم، در دسته انواع داده روی جغرافیا کلیک کنید.
- سپس، برای یافتن عرض جغرافیایی، سلولی را که عرض جغرافیایی را در آن قرار داده اید انتخاب کنید و فرمول را در آنجا تایپ کنید.
=B5.Latitude
- برای دیدن نتیجه Enter را فشار دهید.
- به طور مشابه، عرض جغرافیایی سلول B6 را پیدا می کنیم. .
- اکنون، برای یافتن طول جغرافیایی، به همین ترتیب، عرض جغرافیایی، یک سلول را انتخاب کنید و فرمول زیر را در آن سلول قرار دهید.
=B5.Longitude
- کلید Enter را در صفحه کلید خود فشار دهید.
- به طور مشابه، طول جغرافیایی B6 را با دنبال کردن مراحل قبلی بدست می آوریم.
- همین، اکنون طول و عرض جغرافیایی هر دو شهر را داریم. بنابراین، مجموعه داده ما اکنون آماده استفاده است.
5 روش مختلف برای محاسبه فاصله بین دو شهر در اکسل
یافتن فاصله بین دو مکان ما را قادر می سازد تا جدایی بین دو خانه را تعیین کنیم. ما می توانیم با استفاده از این اطلاعات تخمین بزنیم که چقدر طول می کشد تا بین خانه ها سفر کنیم. برای یافتن فاصله بین دو شهر از مجموعه داده فوق استفاده می کنیم که به تازگی ساخته ایم.
1. استفاده از فرمول هاورسین برای محاسبه فاصله بین دو شهر
یکی از معادلات اساسی برای اکتشاف اقیانوسی فرمول هاورسین است که می تواند برای محاسبه فاصله بین دو مکان در یکصفحه کروی به شرط تعیین طول و عرض جغرافیایی و همچنین شعاع نیمکره. دستگاه های GPS اساساً آن را خودکار کرده اند. بیایید مراحل استفاده از فرمول را برای محاسبه فاصله بین دو شهر دنبال کنیم.
STEPS:
- برای شروع، سلولی را که می خواهید انتخاب کنید فاصله را دریافت کنید، بنابراین، سلول C8 را انتخاب می کنیم.
- سپس، فرمول Haversine را در آن سلول انتخاب شده قرار دهید.
=3959*ASIN(SQRT((SIN(C6-C5)/2)^2+COS(C5)*COS(C6)*(SIN(D6-D5)/2)^2))
- در نهایت، کلید Enter را فشار دهید تا نتیجه را ببینید.
- بنابراین، با استفاده از فرمول، نتیجه را می گیریم 1367.5
2
2 .
بیشتر بخوانید: نحوه محاسبه فاصله بین دو آدرس در اکسل
2. محاسبه فاصله بین دو شهر با توابع ACOS، SIN، COS و RADIANS اکسل
کسینوس معکوس یک مقدار همان چیزی است که تابع ACOS برمی گرداند. سینوس یک زاویه بر حسب رادیان توسط عملکرد Excel SIN برگردانده می شود. کسینوس یک زاویه بر حسب رادیان توسط تابع COS برگردانده می شود. رادیان ها با استفاده از عملکرد Excel RADIANS به درجه تغییر می کنند. ما می توانیم این توابع را برای بدست آوردن فاصله بین دو شهر ترکیب کنیم. همچنین اساساً با استفاده از دستگاههای GPS خودکار شده است. بیایید ترکیب این توابع را برای بدست آوردن فاصله بین دو شهر با طی کردن مراحل اعمال کنیم.
STEPS:
- در وهله اول،سلولی را انتخاب کنید که در آن می خواهید فاصله را بدست آورید. در این مورد، سلول C8 را انتخاب می کنیم.
- پس از آن، ترکیب فرمول تابع را در سلول انتخاب شده وارد می کنیم.
=ACOS(COS(RADIANS(90-C5)) *COS(RADIANS(90-C6)) +SIN(RADIANS(90-C5)) *SIN(RADIANS(90-C6)) *COS(RADIANS(D5-D6))) *6371
- برای مشاهده نتیجه، کلید Enter را در انتها فشار دهید.
- بنابراین با اعمال فرمول به عدد 1357.033633 می رسیم.
ادامه مطلب: چگونه برای محاسبه فاصله بین دو مختصات GPS در اکسل
3. برای بدست آوردن فاصله بین دو شهر، توابع Excel CONCATENATE و SUBSTITUTE را ترکیب کنید
برای ترکیب دو یا حتی چند دنباله از کلمات در یک عبارت، از عملکرد متن CONCATENATE استفاده کنید. تقریباً سی قطعه متن را می توان با استفاده از تابع CONCATENATE اکسل که نتیجه را به صورت متن برمی گرداند، به هم متصل کرد. تابع SUBSTITUTE اکسل از مقایسه برای تغییر متن در یک رشته مشخص استفاده می کند. ما می توانیم این دو تابع را برای ایجاد پیوند Google Map برای یافتن فاصله بین دو آدرس با استفاده از آن ترکیب کنیم. بیایید از فرمول برای بدست آوردن فاصله بین دو شهر با طی کردن مراحل استفاده کنیم.
STEPS:
- به همین ترتیب، در روش قبلی، سلول را انتخاب کنید. جایی که می خواهید Google Map را بدست آورید. در این حالت، سلول C8 را انتخاب می کنیم.
- سپس، فرمول را در آن انتخاب شده وارد کنید.سلول.
=CONCATENATE("//maps.google.co.uk/maps?f=d&source=s_d&saddr=",
SUBSTITUTE(B5," ","+"),"&daddr=",SUBSTITUTE(B6," ","+"))
- برای نمایش نتایج ، کلید Enter را فشار دهید.
با کمک این فرمول، می توانید به Google Map پیوند دهید. که مسیر لس آنجلس به پاسکو را نشان می دهد. شهرها با استفاده از تابع CONCATENATE و نام شهرها با استفاده از تابع SUBSTITUTE به پیوند اضافه خواهند شد.
- پس از آن ، این پیوند را در کادر جستجوی مرورگر خود وارد کنید تا متوجه شوید این دو شهر چقدر از یکدیگر فاصله دارند.
CONCATENATE و توابع SUBSTITUTE همچنین ممکن است در Excel برای تعیین فاصله بین دو شهر در این سیاره استفاده شوند.
بیشتر بخوانید: نحوه محاسبه مایل بین دو آدرس در اکسل (2 روش)
4. ایجاد تابع LAMBDA برای محاسبه فاصله بین دو شهر
عملکرد LAMBDA در اکسل برای ساخت توابع سفارشی شده استفاده می شود که می توانند در یک کاربرگ مورد استفاده قرار گیرند و با نام های آشنا به آن دسترسی داشته باشید. پس از تعریف و نامگذاری، می توانیم از آن توابع در هر جایی از کتاب کار خود استفاده کنیم.
معادله اصلی برای فاصله این است:
D = acos (sinΦ
1
. sinΦ
2
+ cosΦ
1
. cosΦ
2
cos
Δλ)
. R
حتی اگر می تواند کمی طاقت فرسا به نظر برسد، ورودی هایی که برای ما بیشترین اهمیت را دارند:
- عرض جغرافیایی نقطه شروع وطول جغرافیایی.
- طول و عرض جغرافیایی مکان نهایی.
بنابراین در فرمول یا معادله.
- Δλ نشان دهنده تفاوت بین طولهای جغرافیایی ( lon_2-lon_1 ).
- Φ 1 و Φ 2 به صورت متوالی lat_1 و lat_2 را نشان می دهد.
- R شعاع سطح را نشان می دهد .
بیایید یک تابع LAMBDA ایجاد کنیم تا فاصله بین دو شهر را با دنبال کردن مراحل پایین محاسبه کنیم.
STEPS:
- ابتدا سلول را انتخاب کنید C8 .
- به علاوه، فرمول را در آن سلول قرار دهید.
=LAMBDA(_lat1, _lon1, _lat2, _lon2, LET(lat_1, RADIANS(_lat1),lon_1, RADIANS(_lon1),lat_2,RADIANS(_lat2),lon_2, RADIANS(_lon2),r, 6378,ACOS((SIN(lat_1) * SIN(lat_2)) + (COS(lat_1) * COS(lat_2) * COS(lon_2-lon_1))) * r))(C5,D5,C6,D6)
- سپس، Enter را فشار دهید.
- این نتیجه را نشان می دهد، اما فرمول بسیار بزرگ است و ممکن است درک آن در حین استفاده چندباره دشوار باشد.
- بنابراین، به جای انجام این کار، می توانیم با استفاده از تابع LAMBDA یک فرمول سفارشی ایجاد کنیم.
- برای این کار، از نوار به تب Formulas بروید.
- در زیر گروه Defined Names ، روی Name کلیک کنید. Manager .
- این کادر محاوره ای Name Manager را نمایش می دهد.
- اکنون، کلیک کنید در منوی جدید .
- این شما را به پنجره نام جدید می برد.
- به علاوه، فرمول را نام ببرید، همانطور که می خواهیم فاصله بین دو شهر را محاسبه کنیم، بنابراین نام فرمول CityDistance را قرار می دهیم.
- سپس، فرمول زیر را در زمینه به مراجعه می کند.
=LAMBDA(_lat1, _lon1, _lat2, _lon2, LET(lat_1, RADIANS(_lat1),lon_1, RADIANS(_lon1),lat_2,RADIANS(_lat2),lon_2, RADIANS(_lon2),r, 6378,ACOS((SIN(lat_1) * SIN(lat_2)) + (COS(lat_1) * COS(lat_2) * COS(lon_2-lon_1))) * r))
- سپس، روی OK کلیک کنید .
- این شما را دوباره به کادر گفتگوی name Manager می برد.
- به علاوه، روی دکمه را ببندید تا فرآیند تکمیل شود.
- اکنون، می توانید یک تابع سفارشی جدید CityDistance پیدا کنید. . و با استفاده از تابع فاصله دو شهر را بدست می آورید.
- بنابراین با اعمال فرمول به عدد می رسیم. 1358.524645 .
بیشتر بخوانید: نحوه محاسبه فاصله Levenshtein در اکسل (4 روش آسان)
5. محاسبه فاصله بین دو شهر با استفاده از Excel VBA
ایجاد اتصال API ( Application Programming Interface ) و استفاده از آن برای ساخت یک تابع تعریف شده User Defined در VBA دو روش دیگر برای تعیین فاصله بین دو مکان است. برای جمعآوری دادهها برای یک مکان، اکسل از طریق API به هر نقشه، از جمله Google Map و Bing Map متصل میشود. بنابراین، برای استفاده از این تکنیک، ابتدا باید یک کلید API ایجاد کنیم. این واقعاً ساده است، اما متأسفانه، فقط Bing Map API رایگان ارائه می دهد، نه Google. ما این راه را با استفاده از کلید رایگان Bing Map API نشان خواهیم داد. اینجا را کلیک کنید تا Bing Map API Key خود را ایجاد کنید.
STEPS:
- برای شروع، ما یک کلید API ایجاد کرده ایم و آن را در سلول قرار داده ایم C8 .
- اکنون، از نوار به تب Developer بروید.
- سپس، از دسته Code ، روی Visual Basic کلیک کنید تا Visual Basic Editor باز شود. یا Alt + F11 را فشار دهید تا Visual Basic Editor باز شود.
- به جای انجام این کار، شما فقط می توانید بر روی کاربرگ خود راست کلیک کنید و به مشاهده کد بروید. همچنین شما را به ویژوال بیسیک ویرایشگر می برد.
- این در ویرایشگر ویژوال بیسیک<2 ظاهر می شود>.
- به علاوه، روی Module از نوار منوی کشویی Insert کلیک کنید.
- این یک Module در کتاب کار شما ایجاد می کند.
- و کد VBA نشان داده شده در زیر را کپی و جایگذاری کنید.
کد VBA:
7300
- کد را با ذخیره کل کتاب کار به عنوان یک کتاب کار با میکرو فعال ذخیره کنید و پسوند خواهد بود. xlsm .
- این یک نام تابع تعریف شده توسط کاربر CityDistance ایجاد می کند.
توضیح کد VBA
- ما با دادن نام Function خود شروع کردیم 1>CityDistance . First City به عنوان رشته، Second City به عنوان رشته، و Target Value As String نیز به عنوان آرگومان گنجانده شدند.
- سپس Setup HTTP را به عنوان یک شی و نقطه اولیه ، نقطه پایان ، واحد فاصله و url خروجی را اعلام کردیم. به عنوان رشته ها.
- بعداً، ما تغییر دادیم واحد فاصله تا کیلومتر و نقطه اولیه به نقطه شروع پیوند Url .
- بعد، ما تنظیم کردیم پارامترهای مورد نیاز برای برقراری ارتباط بین کد VBA و API ما.
- سپس عملکرد تعریف شده کاربر خود را ایجاد کردیم.
نتیجه گیری
روش های بالا به شما در محاسبه فاصله بین دو شهر در اکسل کمک می کند. امید است که این بتواند به شما کمک کند! لطفا در صورت داشتن هرگونه سوال، پیشنهاد یا بازخورد در قسمت نظرات با ما در میان بگذارید. یا می توانید نگاهی به مقالات دیگر ما در وبلاگ ExcelWIKI.com بیندازید!