معرفی تابع CODE
تابع CODE در اکسل یکی از توابع متنی است که کد عددی مربوط به اولین کاراکتر یک متن را برمیگرداند. به زبان ساده، هر حرف، عدد، علامت یا فاصله در اکسل یک کد عددی دارد و تابع CODE این کد را برای اولین کاراکتر متن نمایش میدهد.
این تابع بیشتر زمانی کاربرد دارد که بخواهید کاراکترهای پنهان، فاصلهها، حروف خاص، تفاوت بین حروف بزرگ و کوچک انگلیسی یا مشکلات ورود اطلاعات را بررسی کنید.
برای مثال اگر بخواهیم کد حرف انگلیسی A را به دست بیاوریم، از فرمول زیر استفاده میکنیم:
=CODE("A")نتیجه این فرمول عدد 65 است، چون کد حرف A در جدول کدهای کاراکتری برابر با 65 است.
مثال سادهتر در فایل اکسل: اگر در سلول A1 مقدار Excel نوشته شده باشد، فرمول زیر کد اولین کاراکتر یعنی E را برمیگرداند:
=CODE(A1)
کاربردهای اصلی تابع CODE
- تشخیص کد عددی اولین کاراکتر یک متن
- بررسی تفاوت بین حروف بزرگ و کوچک انگلیسی
- پیدا کردن فاصلههای اضافی یا کاراکترهای نامرئی در دادهها
- کمک به پاکسازی دادههای واردشده از سیستمهای دیگر
- تحلیل و کنترل کیفیت دادههای متنی
- استفاده در کنار توابعی مثل CHAR، LEFT، IF، COUNTIF و XLOOKUP
- بررسی اینکه یک مقدار با عدد، حرف یا علامت خاص شروع شده است
ساختار (Syntax)
ساختار صحیح تابع CODE در اکسل به شکل زیر است:
=CODE(text)
ساختار فارسی تابع را میتوان اینطور در نظر گرفت:
=CODE(متن)
تابع CODE فقط یک آرگومان دارد. اگر بیش از یک آرگومان وارد کنید، اکسل خطا نمایش میدهد.
آرگومانها
text / متن
این آرگومان همان متنی است که میخواهید کد عددی اولین کاراکتر آن را به دست آورید. این متن میتواند مستقیماً داخل فرمول نوشته شود یا از یک سلول خوانده شود.
مثال با متن مستقیم:
=CODE("B")مثال با ارجاع به سلول:
=CODE(A2)
اگر متن داخل سلول چند کاراکتر داشته باشد، تابع CODE فقط کاراکتر اول را بررسی میکند. مثلاً اگر A2 شامل مقدار Book باشد، این تابع فقط کد حرف B را برمیگرداند.
مثالهای ساده و پایه
مثال 1: به دست آوردن کد یک حرف انگلیسی
اگر بخواهید کد حرف A را محاسبه کنید، از فرمول زیر استفاده کنید:
=CODE("A")نتیجه برابر با 65 است.
مثال 2: تفاوت حروف بزرگ و کوچک
در اکسل، حرف A و a کدهای متفاوتی دارند. برای بررسی این موضوع میتوانید از دو فرمول زیر استفاده کنید:
=CODE("A")=CODE("a")نتیجه فرمول اول 65 و نتیجه فرمول دوم 97 است. بنابراین تابع CODE میتواند در تشخیص تفاوت حروف بزرگ و کوچک انگلیسی مفید باشد.
مثال 3: استفاده از سلول
فرض کنید در سلول A1 مقدار Apple نوشته شده است. فرمول زیر کد اولین حرف یعنی A را برمیگرداند:
=CODE(A1)
نتیجه برابر با 65 خواهد بود.
مثال 4: تشخیص فاصله در ابتدای متن
فرض کنید در سلول A2 متنی دارید که شاید در ابتدای آن فاصله اضافی وجود داشته باشد. فرمول زیر کد اولین کاراکتر را نشان میدهد:
=CODE(A2)
اگر نتیجه 32 باشد، یعنی اولین کاراکتر سلول یک فاصله معمولی است.
مثالهای کاربردی و واقعی
مثال 1: بررسی اینکه متن با فاصله شروع شده یا نه
فرض کنید لیستی از نام مشتریان در ستون A دارید و میخواهید بدانید کدام سلولها با فاصله شروع شدهاند. از فرمول زیر در سلول B2 استفاده کنید:
=IF(CODE(A2)=32,"شروع با فاصله","بدون فاصله اول")
اگر اولین کاراکتر سلول A2 فاصله باشد، پیام «شروع با فاصله» نمایش داده میشود.
مثال 2: شمارش سلولهایی که با حرف A شروع میشوند
اگر بخواهید تعداد سلولهایی را بشمارید که متن آنها با حرف A شروع میشود، میتوانید از COUNTIF استفاده کنید:
=COUNTIF(A2:A20,"A*")
این فرمول همه سلولهایی را میشمارد که با حرف A شروع شدهاند. اگر هدف شما بررسی دقیق کد کاراکتر اول باشد، میتوانید از یک ستون کمکی با CODE استفاده کنید.
مثال 3: ساخت ستون کمکی برای کد اولین کاراکتر
فرض کنید دادههای متنی در ستون A قرار دارند. در ستون B میتوانید کد اولین کاراکتر هر سلول را محاسبه کنید:
=CODE(A2)
سپس میتوانید تعداد مقادیر خاص را با COUNTIF بشمارید:
=COUNTIF(B2:B100,65)
این فرمول تعداد سلولهایی را میشمارد که کد اولین کاراکتر آنها 65 است؛ یعنی با حرف A شروع شدهاند.
مثال 4: ترکیب CODE با LEFT برای شفافیت بیشتر
تابع CODE خودش فقط اولین کاراکتر را بررسی میکند، اما برای خوانایی بهتر میتوانید آن را با LEFT ترکیب کنید:
=CODE(LEFT(A2,1))
این فرمول از نظر نتیجه معمولاً مشابه CODE(A2) است، اما برای خواننده فرمول واضحتر نشان میدهد که فقط کاراکتر اول بررسی میشود.
مثال 5: ترکیب با AND برای کنترل محدوده حروف بزرگ انگلیسی
کد حروف بزرگ انگلیسی از A تا Z بین 65 تا 90 است. برای بررسی اینکه متن با حرف بزرگ انگلیسی شروع شده یا نه، میتوانید از فرمول زیر استفاده کنید:
=IF(AND(CODE(A2)>=65,CODE(A2)<=90),"شروع با حرف بزرگ انگلیسی","سایر موارد")
مثال 6: ترکیب با OR برای تشخیص شروع با علامت خاص
فرض کنید میخواهید بررسی کنید یک متن با علامت خط تیره یا زیرخط شروع شده است یا نه. میتوانید از فرمول زیر استفاده کنید:
=IF(OR(LEFT(A2,1)="-",LEFT(A2,1)="_"),"شروع با علامت خاص","عادی")
در این مثال از LEFT استفاده شده، اما اگر بخواهید با کد عددی کار کنید نیز میتوانید از CODE کمک بگیرید.
مثال 7: ترکیب CODE با XLOOKUP برای تبدیل کد به توضیح
فرض کنید در محدوده D2:E10 جدولی دارید که در ستون D کد کاراکتر و در ستون E توضیح آن نوشته شده است. برای پیدا کردن توضیح کد اولین کاراکتر سلول A2 از فرمول زیر استفاده کنید:
=XLOOKUP(CODE(A2),D2:D10,E2:E10,"کد پیدا نشد")
این فرمول کد اولین کاراکتر A2 را پیدا میکند و توضیح مربوط به آن را از جدول برمیگرداند.
ترکیب تابع CODE با فرمولهای دیگر
- ترکیب با CHAR برای رفتوبرگشت بین کد و کاراکتر
=CHAR(CODE(A2))
این فرمول اولین کاراکتر سلول A2 را برمیگرداند.
- ترکیب با LEFT برای بررسی واضح اولین کاراکتر
=CODE(LEFT(A2,1))
- ترکیب با IF برای شرطگذاری بر اساس کد کاراکتر
=IF(CODE(A2)=32,"فاصله در ابتدا","بدون فاصله")
- ترکیب با AND برای بررسی بازه کدها
=IF(AND(CODE(A2)>=48,CODE(A2)<=57),"شروع با عدد","شروع با غیرعدد")
کد ارقام انگلیسی 0 تا 9 بین 48 تا 57 است.
- ترکیب با COUNTIF برای شمارش کدهای خاص در ستون کمکی
=COUNTIF(B2:B100,32)
این فرمول تعداد سلولهایی را میشمارد که در ستون کمکی B کد 32 دارند؛ یعنی متن اصلی آنها با فاصله شروع شده است.
- ترکیب با SUM برای جمع کردن تعداد خطاها یا موارد خاص در ستون کمکی
=SUM(C2:C100)
اگر در ستون C برای هر خطای متنی عدد 1 و برای حالت سالم عدد 0 ثبت کرده باشید، با SUM میتوانید تعداد کل موارد مشکلدار را محاسبه کنید.
- ترکیب با XLOOKUP برای دستهبندی کاراکترها
=XLOOKUP(CODE(A2),H2:H20,I2:I20,"نامشخص")
خطاهای رایج و روش رفع آنها
1) خطای #VALUE! به دلیل خالی بودن متن
اگر آرگومان تابع CODE یک متن خالی باشد، ممکن است اکسل خطای #VALUE! نمایش دهد.
=CODE("")روش رفع: قبل از استفاده از CODE بررسی کنید سلول خالی نباشد.
=IF(A2="","سلول خالی است",CODE(A2))
2) دریافت نتیجه غیرمنتظره برای حروف فارسی
تابع CODE برای کاراکترهای انگلیسی و کدهای ساده بسیار مناسب است، اما برای حروف فارسی، عربی، ایموجیها و بسیاری از کاراکترهای یونیکد ممکن است نتیجه قابل اتکا نباشد یا در نسخهها و سیستمهای مختلف متفاوت باشد.
روش رفع: برای حروف فارسی و کاراکترهای یونیکد بهتر است از تابع UNICODE استفاده کنید.
=UNICODE(A2)
3) اشتباه گرفتن CODE با CHAR
تابع CODE کد عددی کاراکتر را برمیگرداند، اما تابع CHAR برعکس عمل میکند و از روی عدد، کاراکتر میسازد.
نمونه تابع CODE:
=CODE("A")نمونه تابع CHAR:
=CHAR(65)
روش رفع: اگر ورودی شما متن است و خروجی عدد میخواهید، از CODE استفاده کنید. اگر ورودی شما عدد است و خروجی کاراکتر میخواهید، از CHAR استفاده کنید.
4) انتظار بررسی کل متن
تابع CODE فقط اولین کاراکتر متن را بررسی میکند، نه تمام متن را. مثلاً اگر سلول A2 مقدار Excel داشته باشد، فقط حرف E بررسی میشود.
روش رفع: اگر میخواهید کاراکتر خاصی از متن را بررسی کنید، از MID استفاده کنید.
=CODE(MID(A2,2,1))
این فرمول کد کاراکتر دوم متن را برمیگرداند.
5) استفاده از جداکننده اشتباه در نسخههای منطقهای اکسل
در بسیاری از تنظیمات فارسی یا اروپایی اکسل، جداکننده آرگومانها ممکن است نقطهویرگول باشد، اما در اکسل انگلیسی معمولاً ویرگول استفاده میشود.
نمونه با ویرگول در تنظیمات انگلیسی:
=IF(CODE(A2)=32,"فاصله","عادی")
نمونه با نقطهویرگول در برخی تنظیمات فارسی:
=IF(CODE(A2)=32;"فاصله";"عادی")
روش رفع: اگر فرمول خطا داد، جداکننده آرگومانها را مطابق تنظیمات اکسل خود تغییر دهید.
نکات حرفهای و ترفندهای مهم
- برای کار با متنهای انگلیسی، تابع CODE بسیار سریع و ساده است.
- برای متنهای فارسی، عربی، چینی، ایموجیها و کاراکترهای خاص، معمولاً UNICODE انتخاب بهتری است.
- برای تشخیص فاصله معمولی در ابتدای متن، کد 32 را بررسی کنید.
- برای بررسی ارقام انگلیسی، بازه 48 تا 57 را کنترل کنید.
- برای بررسی حروف بزرگ انگلیسی، بازه 65 تا 90 را کنترل کنید.
- برای بررسی حروف کوچک انگلیسی، بازه 97 تا 122 را کنترل کنید.
- برای خوانایی بهتر فرمول، گاهی استفاده از LEFT در کنار CODE مفید است.
- اگر دادهها از سایت، نرمافزار حسابداری یا سیستمهای خارجی وارد اکسل شدهاند، CODE میتواند برای پیدا کردن کاراکترهای عجیب در ابتدای متن کمککننده باشد.
- برای پاکسازی فاصلههای اضافی، میتوانید از TRIM استفاده کنید.
=TRIM(A2)
- اگر کاراکترهای غیرقابل چاپ در متن دارید، تابع CLEAN هم میتواند مفید باشد.
=CLEAN(A2)
- برای پاکسازی بهتر دادههای متنی، ترکیب TRIM و CLEAN کاربردی است.
=TRIM(CLEAN(A2))
تفاوت تابع CODE با توابع مشابه
تفاوت CODE و CHAR
CODE یک کاراکتر را دریافت میکند و کد عددی آن را برمیگرداند. CHAR یک عدد را دریافت میکند و کاراکتر متناظر با آن عدد را نمایش میدهد.
=CODE("A")=CHAR(65)
تفاوت CODE و UNICODE
CODE بیشتر برای مجموعه کاراکترهای قدیمیتر و معمولاً کاراکترهای ساده مناسب است. UNICODE برای کاراکترهای یونیکد، زبانهای مختلف از جمله فارسی و نمادهای خاص انتخاب دقیقتری است.
=UNICODE("آ")اگر با حروف فارسی کار میکنید، پیشنهاد میشود به جای CODE از UNICODE استفاده کنید.
تفاوت CODE و LEFT
LEFT بخشی از متن را برمیگرداند، اما CODE کد عددی اولین کاراکتر متن را نمایش میدهد. این دو تابع گاهی در کنار هم استفاده میشوند.
=LEFT(A2,1)
=CODE(LEFT(A2,1))
تفاوت CODE و EXACT
EXACT برای مقایسه دقیق دو متن استفاده میشود و به حروف بزرگ و کوچک حساس است. اما CODE برای نمایش کد عددی اولین کاراکتر کاربرد دارد.
=EXACT(A2,B2)
سازگاری با نسخههای مختلف اکسل
تابع CODE از توابع قدیمی و پایهای اکسل است و در بیشتر نسخههای اکسل پشتیبانی میشود.
- Excel 2007
- Excel 2010
- Excel 2013
- Excel 2016
- Excel 2019
- Excel 2021
- Microsoft 365
- Excel Online
- Excel for Mac
نکته مهم این است که نتیجه تابع CODE برای کاراکترهای غیرانگلیسی ممکن است به تنظیمات سیستم و نسخه اکسل وابسته باشد. برای سازگاری بهتر در متنهای فارسی و چندزبانه، تابع UNICODE گزینه مناسبتری است.
سؤالات پرتکرار درباره تابع CODE
تابع CODE در اکسل چه کاری انجام میدهد؟
کد عددی اولین کاراکتر یک متن را برمیگرداند.
آیا تابع CODE کل متن را بررسی میکند؟
خیر. این تابع فقط اولین کاراکتر متن را بررسی میکند.
کد فاصله معمولی در اکسل چیست؟
کد فاصله معمولی 32 است.
=CODE(" ")آیا CODE برای حروف فارسی مناسب است؟
برای حروف فارسی بهتر است از تابع UNICODE استفاده کنید، چون CODE ممکن است نتیجه وابسته به سیستم بدهد.
=UNICODE(A2)
چطور بفهمم یک متن با عدد شروع شده است؟
اگر اعداد انگلیسی باشند، میتوانید کد اولین کاراکتر را بین 48 و 57 بررسی کنید.
=IF(AND(CODE(A2)>=48,CODE(A2)<=57),"شروع با عدد","شروع با غیرعدد")
آیا CODE و CHAR برعکس هم هستند؟
بله، تا حد زیادی. CODE از کاراکتر به عدد میرسد و CHAR از عدد به کاراکتر.
جمعبندی و پیشنهاد یادگیری بعدی
تابع CODE یکی از توابع ساده اما کاربردی اکسل برای تحلیل دادههای متنی است. این تابع کد عددی اولین کاراکتر یک متن را برمیگرداند و برای تشخیص فاصلههای اضافی، بررسی شروع متن با عدد یا حرف، کنترل کیفیت دادهها و تحلیل کاراکترهای خاص بسیار مفید است.
با این حال، اگر با متنهای فارسی، چندزبانه یا کاراکترهای یونیکد کار میکنید، بهتر است در کنار CODE تابع UNICODE را هم یاد بگیرید. همچنین یادگیری توابع CHAR، LEFT، MID، TRIM، CLEAN، IF، AND، COUNTIF و XLOOKUP میتواند به شما کمک کند فرمولهای قدرتمندتری برای پاکسازی و تحلیل دادههای متنی بسازید.
