ads right         gif left

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


ارجاع به نام ها در فرمول های اکسل

شما می توانید از هر یک از شیت های ورکبوک به یک نام سطح ورکبوک ، تنها با استفاده از نام آن دسترسی داشته باشید. برای نام های سطح شیت قبل از آنها باید نام شیت را بیاورید مگر اينكه در شیت تعریف شده از آنها استفاده می کنید. برای مثال فرض کنید شما یک ورکبوک با دو شیت دارید: Sheet1 و Sheet2. در این ورکبوک شما FOROUSH_KOL (یک نام سطح ورکبوک)، FOROUSH_TEHRAN (یک نام سطح شیت در Sheet1) و FOROUSH_OTHER (یک نام سطح شیت در Sheet2) را دارید. در Sheet1 و Sheet2 می توانید به FOROUSH_KOL تنها با استفاده از نام دسترسی داشته باشید:

=FOROUSH_KOL

اگر شما در Sheet1 باشید و بخواهید به FOROUSH_TEHRAN دسترسی داشته باشید، می توانید از فرمولی مشابه فرمول بالا استفاده کنید. چون FOROUSH_TEHRAN در Sheet1 تعریف شده است:
=FOROUSH_TEHRAN

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

نکته: اگر در نام شیت کاراکتر فاصله باشد باید نام شیت درون علامت ‘’ قرار گیرد:
=’My Sheet’!My_Name

عموما بهتر است تا آنجایی که ممکن است نام در سطح پایین تری تعریف شود. اگر می خواهید از یک نام تنها در یک شیت استفاده کنید بهتر است آن را در سطح شیت تعریف کنید. برای نام هایی که می خواهید در کل ورکبوک استفاده کنید سطح ورکبوک مناسب تر است.
دقت کنید که تنها نام های سطح شیت شیت جاری در جعبه نام نمایش داده می شود. به صورت مشابه تنها نام های سطح شیت شیت جاری در لیستی که از طریق انتخاب Formulas➜Defined Names➜Use in Formulas  نمایش داده می شود، ظاهر خواهد شد.
ارجاع به نامها از یک ورکبوک دیگر
قبلا در مورد ارجاع به سلول و محدوده های یک ورکبوک دیگر توضیح دادیم. همان قواعد دقیقا در مورد نام ها نیز صدق می کند.
برای مثال فرمول زیر از یک محدوده با نام MonthlySales كه در ورکبوکی با نام Budget.xlsx تعریف شده است استفاده می کند (فرض شده است که ورکبوک باز شده است):
=AVERAGE(Budget.xlsx!MonthlySales)

اگر نام MonthlySales یک نام سطح شیت در شیت Sheet1 باشد، فرمول به شکل زیر خواهد بود:
=AVERAGE([Budget.xlsx]Sheet1!MonthlySales)

نام های گیج کننده
استفاده از نام های سطح شیت می تواند گیج کننده باشد چون اکسل به شما اجازه می دهد یک نام سطح شیت را تعریف کنید حتی اگر یک نام سطح ورکبوک مشابه آن وجود داشته باشد. در چنین موردی نام سطح شیت نسبت به نام سطح ورکبوک اولویت دارد البته فقط در شیتی که نام سطح شیت را در آن تعریف کرده اید.
برای مثال شما یک نام سطح ورکبوک مانند TOTAL را برای یک سلول در Sheet1 تعریف می کنید. شما همچنین می توانید نام سطح شیت Sheet2!TOTAL نیز داشته باشید. وقتی Sheet2 فعال است TOTAL به نام سطح شیت ارجاع می دهد. اما اگر هر یک از شیت های دیگر فعال باشد TOTAL به نام سطح ورکبوک ارجاع می دهد. برای اینکه کار خود را آسانتر کنید پیشنهاد می کنیم هرگز نام سطح شیت و سطح ورکبوک مشابه را انتخاب نکنید.
یک روش برای اینکه این نوع سردرگمی ایجاد نشود این است که برای خود قواعد نامگذاری وضع کنید. بااین قواعد نامگذاری ، نامها اطلاعات بیشتری را در مورد خودشان به شما می دهند. برای مثال می توانید همه نام های سطح ورکبوک خود را با پیشوند WB و همه نام های سطح شیت خود را با پیشوند WS نامگذاری کنید. در این روش نامهای WBTOTAL و WSTOTAL شما را گیج نخواهد کرد.

اضافه کردن نظر


کد امنیتی
تغییر کد امنیتی