سبد خرید
0

محصولی در سبد خرید نیست.

بازگشت به فروشگاه

قواعد فرمول نویسی حرفه ای در اکسل | قسمت اول

فرمول نویسی اکسل
۴.۶/۵ - (۲۶ امتیاز)

قواعد فرمول نویسی اکسل

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

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

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

۱- ساختار توابع

– اهمیت پرانتز در فرمول نویسی

– درک انواع آرگومان ها

استفاده از عملگرها

۲- آدرس دهی مطلق و نسبی

۳- مشاهده محاسبات فرمول (دیباگ کردن فرمول)

        4- نکات تکمیلی

 درک ساختار توابع:

اهمیت پرانتز در فرمول نویسی

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

مثلا در شکل ۱ می بینید که پرانتز مشکی رنگ که مربوط به تابع Index هست بسته نشده است. در واقع پرانتز تابع Column(A2) به درستی بسته نشده است و این باعث شده که پرانتز آخر به عنوان پرانتز تابع Column شناخته شود.

فرمول نویسی اکسل - اهمیت پرانتزها

شکل ۱- فرمول نویسی اکسل – اهمیت پرانتز ها در فرمول نویسی ترکیبی

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

خطای پرانتزها

شکل۲- فرمول نویسی اکسل- خطای ناشی از جابجایی یا کمبود پرانتز ها در فرمول نویسی

 

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

 

آرگومان های تابع

در فرمول نویسی، بعد از زدن = و تایپ نام تابع مورد نظر و باز کردن پرانتز، آرگومان های مربوط به اون تابع نمایش داده می شه و شما باید شروع کنید به تخصیص آرگومان مناسب به تابع. همچنین وقتی پرانتز رو باز میکنید، اگر روی fx در نوار فرمول کلیک کنید، مطابق شکل ۳، آرگومان های تابع، در پنجره ای به نام Function Arguments ظاهر می شود و می توانید در این پنجره، آرگومان های تابع را اختصاص دهید.

فرمول نویسی اکسل - پنجره نمایش آرگومان ها

شکل ۳- فرمول نویسی اکسل – پنجره نمایش آرگومان های تابع

با زدن بر روی Help on this function موجود در پنجره شکل ۳، صفحه ای باز می شه که تابع و آرگومان ها رو به همراه مثال، شرح می ده. استفاده از این توضیحات و مثال ها، مخصوصا در ابتدای کار آشنایی با توابع و فرمول نویسی، توصیه میشه.

نکته:
برای یادگیری نحوه اضافه کردن توضیحات اختصاصی به فرمول های نوشته شده مقاله افزودن راهنما به فرمول رو بخونید.

 

انواع حالت هایی که آرگومان یک تابع می تواند داشته باشد، در زیر آمده است:

آرگومانمثال
۱عددSum(12,3)
۲متنRept(“Excelpedia”,10)
۳آدرس سلولSum(A1,A5)
۴آدرس یک محدودهSum(A1:A5)
۵علامت و نشانهRept(“J”,10)
۶تابعRept(“Excelpedia”,Sum(A1,4))
۷محدوده نامگذاری شدهSum(Data)

 

نکته:
به تفاوت دو حالت  ۳ و ۴ دقت کنید. حالت ۳ جمع سلول های A1 و A5  (دو سلول) رو به ما میده. حالت ۴، جمع سلول های A1 تا A5 (پنج سلول) رو به ما میده.

 

همونطور که تا الان مشاهده کردید، آرگومان ها در یک تابع با یک جداننده (Separator) از هم جدا می شن. این جدا کننده عموما , یا ; است که در هر سیستم می تونه متفاوت باشه. حتما از جداکننده ای که در اکسل نشون داده می شه استفاده کنید. در غیر اینصورت باز هم با خطا ی شکل ۲ مواجه میشید.در واقع اشتباه گذاشتن جدا کننده باعث میشه تعداد آرگومان ها به درستی و در جای خود تشخیص داده نشه و منجر به خطا بشه.

مسیر تغییر این جداکننده در زیر نشون داده شده:

Control Panel\ All Control Panel Items\ Region and Language\ Formats\ Additional Settings\ Number\ List Separator

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

 

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

نکته:
برخی توابع هستن که آرگومان ندارن مثل Rand. این تابع عدد تصادفی در بازه ۰ و ۱ تولید میکنه و هیچ آرگومانی نداره.

 

نکته آخر در خصوص آرگومان های یک تابع:

بعضی آرگومانها اجباری هستن و حتما باید در تابع وارد بشن و اگر نشه حتما با خطا مواجه میشیم. اما بعضی آرگومانها در بعضی توابع وجود دارن که اختیاری هستن و میتونیم در تابع ثبت نکنیم. از کجا متوجه بشیم که یک آرگومان اختیاری هست یا اجباری؟

آرگومان های اختیاری در تابع، داخل کروشه [ ] نشان داده می شوند. که نشاند دهنده این است که این آرگومان اختیاری است. بقیه آرگومان ها که داخل [ ] نیستن، اجباری هستن و حتما باید در تابع ثبت بشن.

مثال:

تابع Rank در اکسل رتبه بندی میکنه. یعنی رتبه یک عدد رو در یک محدوده (عدد) به ما میده. آرگومان آخر این تابع [Order] اختیاری است. این آرگومان تعیین میکنه که رتبه بندی بصورت نزولی (۰) انجام بشه یا صعودی (۱). درصورتی که این آرگومان را در تابع وارد نکنیم، اکسل آن را ۰ در نظر می گیره و رتبه بندی رو بصورت نزولی انجام میده.

آرگومان اختیاری

شکل ۴- فرمول نویسی اکسل – آرگومان اختیاری

نکته:
حتما باید به این موضوع دقت کنیم که در صورت حذف آرگومان های اختیاری، رفتار و منطق محاسبه آن تابع چگونه خواهد بود.
کلیدواژه : مقدماتی
آواتار
145

فارغ التحصیل لیسانس مهندسی صنایع، ارشد مدیریت صنعتی از دانشگاه تربیت مدرس و عاشق اکسل هستم. از سال 1388 که ترم 2 لیسانس بودم، به توصیه استاد مشاورم شروع به خوندن اکسل بصورت حرفه ای کردم و همچنان در حال مطالعه و یادگیری و البته آموزش به بقیه هستم.

دیدگاه کاربران
  • حامد ۸ دی ۱۳۹۸ / ۱۲:۰۷ ب٫ظ

    درود بر شما و خسته نباشین
    بنده حقوق مالیات مشمول رو که در اکسل حساب کردم منفی درامده این به این دلیل بوده که مالیات حقوق به شخص تعلق نگرفته و منفی درامده حال من میخواهم این عدد منفی صفر بشود باید چ فرمولی استفاده کنم که صفر را نشان دهد.ممنون میشوم مثال بزنید

    • آواتار
      حسنا خاکزاد ۱۰ دی ۱۳۹۸ / ۱۰:۱۱ ق٫ظ

      درود بر شما
      با IF میتونید شرط بذارید که اگر کوچکتر از صفر شد، صفر رو نمایش بده

  • فاطمه ۲۵ آبان ۱۳۹۸ / ۱۰:۰۴ ق٫ظ

    سلام من در اکسل میانگین اعداد را بدست آوردم و با استفاده از گزینه mailings نرم افزار ورد آنها را در ورد قرار دادم ولی میانگین اعداد را بصورت گرد نشده قرار میده لطفا راهنمایی کنید که چطور این اعداد گرد شوند ؟ باتشکر

    • آواتار
      حسنا خاکزاد ۴ آذر ۱۳۹۸ / ۱۱:۰۹ ق٫ظ

      درود بر شما
      برای گرد شدن، از توابع گرد کردن استفاده کنید
      فرمت سل اصل عدد رو تغییر نمیده. تابع round رو در سایت سرچ کنید و مقاله رو بخونید

  • علی ۷ آبان ۱۳۹۸ / ۱۰:۲۷ ق٫ظ

    سلام
    وقت بخیر
    یک فرم ثابت برای گزارش کار روزانه دارم ک روزانه کلیه اطلاعات را باید در یک شیت دیگه بصورت summery کپی کنم ک بعضی وقتا مشکل پیش میاد
    میخوام ی فایل داشته باشم ک همزمان ک اطلاعات در فرم گزارش روزانه وارد میشه در شیت دیگه هم بصورت اتوماتیک وارد بشه و بعد از ذخیره سازی اگه اطلاعات جدید وارد شد زیر اطلاعات قبلی در summery اضافه بشه
    ممنون

    • سامان چراغی ۱۰ آبان ۱۳۹۸ / ۱۱:۰۶ ق٫ظ

      سلام
      برای انجام این کار باید از VBA استفاده کنید.

  • ساسان ۶ آبان ۱۳۹۸ / ۱۲:۲۰ ب٫ظ

    با سلام.
    یه سوال از خدمتتون داشتم. من یه فرمول به شکل زیر نوشتم:
    IF(AND(BI1=Sheet1!A2;’Sieve Data’!BH1=Sheet1!B3);Sheet1!G3;IF(AND(‘Sieve Data’!BI1=Sheet1!A2;’Sieve Data’!BH1=Sheet1!B2);Sheet1!G2))
    میخوام همین عملیات برای ۳۵ سطر دیگه هم اتفاق بیوفته ولی با خطا مواجه میشم. اگر امکان داره راهنمایی بفرمایید. با سپاس

    • آواتار
      حسنا خاکزاد ۴ آذر ۱۳۹۸ / ۱۲:۳۰ ب٫ظ

      درود
      چه خطایی؟؟
      اگر $ ها درست باشه نباید خطا وجود داشته باشه
      کاملا بستگی به شرایط داده ها و فرمولتون داره. ظاهر این فرمول غلط به نظر نمیرسه

  • قالب سازی نمونه ۱۴ مهر ۱۳۹۸ / ۱۱:۴۴ ق٫ظ

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

    • آواتار
      حسنا خاکزاد ۱۴ مهر ۱۳۹۸ / ۶:۵۶ ب٫ظ

      درود بر شما
      هم میتونید کد نویسی کنید
      هم فرمول نویسی!
      بسته به حجم داده و ساختار داده روشها متفاوته. برای فرمول نویسی، میتونید از فرمول نویسی آرایه ای و ترکیب index, if, small و … استفاده کنید

      • قالب سازی نمونه ۱۵ مهر ۱۳۹۸ / ۸:۲۷ ق٫ظ

        میشه روش ها رو بگید؟
        من میخوام شیش سلول از اون ردیفی که جلوش نوشته شده درست رو بیارم داخل یه جدول.

  • علی ۲۶ شهریور ۱۳۹۸ / ۵:۵۸ ب٫ظ

    با سلام
    بسیار تشکر میکنم از سایت خوبتان ببخشید میخواستم اکیل رو به صورت حرفه ای یاد بگیرم مخصوص فرمول نویسی برای کارهای حسابداری و همچنین ساخت نرم افزار با اکسل رو خیلی تشکر میکنم که کمکم کنید

    • آواتار
      حسنا خاکزاد ۲۷ شهریور ۱۳۹۸ / ۱۰:۰۳ ق٫ظ

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

  • محمد ۲۱ شهریور ۱۳۹۸ / ۹:۵۷ ق٫ظ

    سلام
    یک فایل طراحی کردم مشکل اکسل دارم .لطفا کمکم کنید.
    ۱-هنگام محاسبه فرمول سلول های خالی که ارجاع داده شده اند در محاسبه بعنوان صفر در نظر گرفته می شوند ودر نتیجه یک عدد پرت نمایش می دهند و من میخواهم خالی باشند وقتی عددی در سلول وارد نشده است.
    ۲-برای حذف خطای DIV/0 چکار باید کرد.

    • آواتار
      حسنا خاکزاد ۲۵ شهریور ۱۳۹۸ / ۱۲:۲۹ ب٫ظ

      درود بر شما
      بسته به نوع محاسبات میتونید با if کنترل کنید
      سوال دوم هم این مقاله رو بخونید
      https://excelpedia.net/error-management/

  • وحید ۱۳ مرداد ۱۳۹۸ / ۱۰:۳۹ ب٫ظ

    سلام و خسته نباشید
    میخواستم یک فرمول بنویسم که تاریخ رو از ستون a بخونه،اگر اون تاریخ روز اول هر ماه بود،عدد متناظر اون تاریخ در ستون b رو پیدا کنه و میانگین بگیره.
    میشه همچین چیزی آیا؟؟

    • سامان چراغی ۱۴ مرداد ۱۳۹۸ / ۸:۵۶ ق٫ظ

      سلام،
      با استفاده از تابع Rightو Value میتونید عدد روز رو از تاریخ دربیارید، در نهایت با استفاده از IF بررسی کنید که اگر مساوی یک هست تاریخ رو بذاره:

      =IF(Value(Right(A1,2))=1,A1,"")
      
  • سمیرا نوروزی ۴ تیر ۱۳۹۸ / ۸:۲۲ ب٫ظ

    باسلام و احترام
    وقت بخیر
    استاد کار پروژه هم انجام می دهید؟ (فرمول نویسی در اکسل)

    • آواتار
      حسنا خاکزاد ۶ تیر ۱۳۹۸ / ۱۱:۴۹ ق٫ظ

      درود بر شما
      ایمیل بزنید به info@excelpedia.net و شرح بدید موضوع رو.
      پاسخ داده میشه

  • حمیدرضا ۲ تیر ۱۳۹۸ / ۳:۰۴ ب٫ظ

    با سلام:
    اگر تعداد ایف ها زیاد باشه (مثلا حدود ۲۵ ایف) چه راهکاری برای کند نشدن برنامه وجود داره؟

    • آواتار
      حسنا خاکزاد ۲ تیر ۱۳۹۸ / ۸:۳۴ ب٫ظ

      درود بر شما
      بستگی به صورت سوال داره
      قطعا توابع جایگزین میشه استفاده کرد

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

توسط
تومان