هنگام استفاده از اکسل، ممکن است متوجه شوید که نماد @ بهطور مکرر در فرمولهای شما ظاهر میشود. این کاراکتر کوچک چیزی نیست که معمولاً خودتان تایپ کنید؛ در عوض، اکسل بهصورت خودکار در برخی موقعیتها، بهویژه هنگام کار با جداول، آن را اضافه میکند.
هنگام استفاده از اکسل، ممکن است نماد @ را در فرمولهای خود بیشتر ببینید. این کاراکتر کوچک چیزی نیست که معمولاً خودتان تایپ کنید؛ بلکه اکسل آن را بهصورت خودکار در مواقع خاص، بهویژه هنگام کار با جداول، اضافه میکند.
در نگاه اول، بهنظر میرسد تصادفی باشد، اما در واقع این روش اکسل برای کمک به شما در ارجاع دادهها بهصورت کارآمدتر است. این یک هدف خاص را دنبال میکند که میتواند کار با دادهها را بسیار آسانتر کند. بنابراین، دانستن زمان استفاده از آن (یا عدم استفاده) مهم است.
چرا نماد @ را اینقدر بیشتر میبینید؟
این روش اکسل برای جلوگیری از خراب شدن جدولگستردههای قدیمی شماست

نماد @ به عنوان عملگر تقاطع ضمنی شناخته میشود و مایکروسافت آن را در اکسل ۳۶۵ معرفی کرد. پیش از آن، اکسل فرمولها را بهطور متفاوتی پردازش میکرد — نسخههای قدیمی بهصورت خودکار مقدار تک را که شما منظور داشتید هنگام ارجاع به یک بازه سلولی تشخیص میدادند. این حالت زمانی تغییر کرد که اکسل پشتیبانی از آرایههای پویا را افزود. آرایههای پویا به فرمولها اجازه میدهند مقادیر متعدد را بهصورت خودکار در چندین سلول پخش کنند. از آن زمان، من از فرمولهای آرایهای اکسل برای حل محاسبات پیچیده استفاده کردهام.
این یک بهروزرسانی بزرگ بود، اما مشکلی را ایجاد کرد. اکسل به روشی برای تمایز بین فرمولهایی که باید یک مقدار بازگردانند (روش قدیمی) و فرمولهایی که مقادیر متعدد باز میگردانند (روش جدید) نیاز داشت. اینجاست که نماد @ وارد میشود. این نماد صریحاً به اکسل میگوید که یک مقدار واحد از بازه بازگرداند، نه اینکه مقادیر متعدد را در سلولها پخش کند.
هنگامی که یک جدولگسترده قدیمی را در اکسل ۳۶۵ باز میکنید، اکسل نماد @ را به برخی فرمولها اضافه میکند تا این سازگاری عقبگرد را حفظ کند و جدولگسترده شما دقیقاً همانطور که قبلاً کار میکرد، ادامه یابد.
نماد @ برای تسلط بر جداول اکسل مهم است
ارجاعات ساختاری فرمولهای شما را خواناتر میکند

نماد @ زمانی بیشترین کاربرد را دارد که با جداول اکسل کار میکنید. هنگامی که یک بازه را به جدول تبدیل میکنید با استفاده از Ctrl + T، اکسل شروع به استفاده از ارجاعات ساختاری بهجای آدرسهای سلولی مانند A2 یا B5 میکند.
فرض کنید یک جدول فروش دارید که ستونهای منطقه، درآمد و کمیسیون دارد. در یک فرمول معمولی، برای محاسبه یک مقدار چیزی شبیه به موارد زیر مینویسید:
=B2*C2
اما در یک جدول، اکسل بهجای آدرسهای سلولی از نام ستونها استفاده میکند — بنابراین فرمول به شکل زیر خواهد بود:
=[@Revenue]*[@Commission]
نماد @ در اینجا به اکسل میگوید که به ردیف فعلی نگاه کند. زمانی که [@Revenue] مینویسید، میگویید «مقدار Revenue این ردیف را بگیرید». بدون @، اکسل سعی میکند به تمام ستون Revenue ارجاع دهد، که منجر به پخش چندین نتیجه میشود و فرمول را خراب میکند.
در اینجا کارایی آن مشهود میشود. اگر نرخهای کمیسیون را در جدول دادههای فروش محاسبه کنید و فرمولی را در یک سلول وارد کنید، اکسل بهصورت خودکار آن را به کل ستون تکثیر میکند. نماد @ اطمینان میدهد که فرمول هر ردیف فقط به دادههای همان ردیف ارجاع دهد — نه به کل ستون.
این رویکرد ارجاع ساختاری، فرمولها را خواناتر و قابل نگهداریتر میکند. بهجای مشاهده =G2*0.15 در نوار فرمول، خواهید دید:
=[@Sales Amount]*0.15
این بلافاصله واضح میکند که چه چیزی را محاسبه میکنید. بهویژه وقتی که پس از چند هفته به یک جدولگسترده باز میگردید و نیاز به درک آن دارید، بسیار مفید است.
نماد @ همچنین فرمولهای شما را پایدارتر میکند. اگر ردیفهای میانی جدول را اضافه یا حذف کنید، ارجاعات ساختاری ثابت میمانند. ارجاعهای سلولی سنتی باید بهروز شوند، اما [@Revenue] همیشه به ستون Revenue در ردیف جاری اشاره میکند — بدون توجه به این که آن ردیف به کجا منتقل شده است.
آیا باید از نماد @ استفاده کنید یا از آن اجتناب کنید؟
بگذارید اکسل آن را مدیریت کند — مگر اینکه با آرایههای پویا کار کنید

در اکثر موارد، نیازی به نگرانی درباره تایپ نماد @ ندارید. اکسل بهصورت خودکار آن را در مواقع لازم، بهویژه در جداول، اضافه میکند. اگر فرمولهای شما بهدرستی کار میکنند و نتایج مورد انتظار را برمیگردانند، دلیلی برای جستجو و افزودن یا حذف نماد @ وجود ندارد. استثنای اصلی زمانی است که عمداً با آرایههای پویا کار میکنید و میخواهید خروجی را کنترل کنید.
اگر فرمول زیر را در یک جدول تایپ کنید، اکسل میداند که شما مقدار ردیف جاری را میخواهید:
=[@Revenue]*0.15
اما اگر آن را بدون @ بنویسید، اکسل آن را بهعنوان ارجاع به کل ستون درک میکند. گاهی ممکن است بخواهید عمداً نماد @ را حذف کنید. برای مثال، اگر فرمولی مشابه زیر داشته باشید، فقط سعی میکند مقدار تک ردیف جاری را مرتب کند.:
=SORT([@Revenue])
و اگر بخواهید کل ستون Revenue را بهجای مقدار تک ردیف جاری مرتب کنید، باید @ را حذف کنید تا به دست آورید:
=SORT([Revenue])
[ @Revenue ] یک مقدار تک است، بنابراین تابع SORT ریختن (spill) نخواهد داشت، در حالی که [Revenue] یک آرایه ستونی است و ریختن خواهد شد.
نماد @ میتواند در فرمولهای معمولی خارج از جداول نیز ظاهر شود زمانی که اکسل فکر میکند شما قصد داشتهاید به یک مقدار تک از یک بازه ارجاع دهید. اگر بهطور غیرمنتظرهای آن را ببینید، معمولاً به این معنی است که اکسل از ریختن فرمول شما جلوگیری میکند، در حالی که شما ممکن است این منظور را نداشته باشید.