فارسی کردن اعداد – انگلیسی به فارسی کردن اعداد
مشکلی که بسیاری از کاربران فارسیزبان اکسل با این نرمافزار قدرتمند دارند، عدم نمایش اعداد به صورت فارسی میباشد.
در حالت عادی که شما در اکسل اعداد را وارد مینمایید به صورت پیشفرض به شکل انگلیسی نوشته میشود اما کاربران نیاز دارند تا در گزارشات و نمودارهای خود اعداد را به شکل فارسی نمایش دهند.
جهت تغییر اعداد از انگلیسی به فارسی در نرمافزار اکسل روشهای زیادی وجود دارد. ما در این مقاله به مهترین آنها میپردازیم.
فارسی کردن اعداد در اکسل به دو بخش کلی ذیل قابل تقسیم میباشد که به توضیح مفصل هرکدام میپردازیم:
در این روش شما میتوانید به راحتی با تغییر فونت سلول به خواسته خود برسید.
برای این کار کافیست محدوده اعداد خود را انتخاب کنید و سپس فونت سلولها را به یکی از فونتهایی که با کلمه B شروع میشوند مانند B Nazanin , B Titr و یا هر فونت فارسی دیگر تغییر دهید.
در این روش شما میتوانید به راحتی محدوده اعداد خود را انتخاب کرده و از تب Home بخش Alignment منوی آبشاری Text Direction را زده و گزینه Right-To-Left را انتخاب کنید.
نکته: برای استفاده از این روش شما نیاز به نصب و انتخاب فونت فارسی ندارید.
پس از انتخاب محدوده اعداد راستکلید کنید، و گزینه Format Cells را انتخاب و از تب Number در قسمت Custom کدهای زیر را برای حالتهای مختلف بنویسید:
تبدیل اعداد انگلیسی به فارسی
[$-3020429]General و یا [$-3010000]General
تبدیل اعداد انگلیسی به عربی
[$-2020429]General و یا [$-2010000]General
تبدیل اعداد انگلیسی به فارسی بههمراه جداکننده هزارگان
[$-3020429]#,###
تبدیل اعداد انگلیسی به فارسی بههمراه جداکننده هزارگان بعلاوه عبارت ریــال
[$-3020429]#,###" ریال"
نکته: در این روش نیز احتیاج به نصب فونت فارسی و یا انتخاب فونت فارسی ندارید.
در این روش با استفاده از تابع TEXT و فرمتهای ارائه شده در روش قبل میتوان اعداد انگلیسی را به فارسی تبدیل کرد.
به عنوان مثال اگر در سلول A1 عددی انگلیسی داشته باشیم، در سلول دیگر با کمک فرمول زیر میتوان آن را به فارسی تبدیل کرد.
=TEXT(A1,"[$-3010000]General")
در این روش در محیط ویژوالبیسیک با تعریف یک تابع (En2Fa) میتوانیم اعداد انگلیسی را به فارسی تبدیل کنیم.
روش استفاده: ابتدا کدهای ذیل را در یک ماژول (Module) کپی میکنیم. سپس در محیط اکسل با استفاده از تابع En2Fa و انتخاب سلولی که حاوی عدد انگلیسی است (به عنوان آرگومان تابع)، آن را به فارسی تبدیل میکنیم.
Function En2Fa(rng As Range) ' Code written by: Excel Iran Team - Amir Ghasemiyan Dim num, i As Integer, ch As String num = rng.Value For i = 1 To Len(num) ch = Mid(num, i, 1) If AscW(ch) >= 48 And AscW(ch) <= 57 Then ch = ChrW(AscW(ch) + 1728) En2Fa = En2Fa + ch Next i End Function
نکته: دقت داشته باشید که خروجی این تابع بهصورت متن میباشد. لذا بهطور پیشفرض قابلیت محاسبات با مقدار تولیدی وجود ندارد.
در این روش شما میبایست مسیر ذیل را طی کرده تا تنظیمات سیستم خود را به فارسی تغییر دهید:
در ویندوز 7 و ماقبل آن:
Control panel > language and regional option > regional option > customize > digit sub situation > national
در ویندوز 8 و بعد از آن:
Control panel > Clock, Language, and Region > Region > Additional settings > use native digits > national
نکته: در این روش شما باید در تنظیمات region، فرمت را بصورت (Persian (Iran قرار دهید.
بزرگترین مشکل این مورد تغییرات در کل زبان سیستم شما بوده که مورد نظر بسیاری از کاربران نمیباشد.
برای فارسی کردن اعداد در نمودارها از روش زیر میتوان استفاده نمود:
ابتدا روی اعداد مورد نظرتان (محورهای افقی یا عمودی) راستکلیک کرده و سپس Format Axis را انتخاب کنید. در پنجره باز شده منوی Number را انتخاب کرده و در قسمت Category روی گزینه Custom کلیک کنید. سپس در کادر خالی، کد فرمت موردنظر را مطابق آنچه در روش ۱-۳ توضیح داده شد وارد کرده و گزینه Add را انتخاب کنید.
آیا شما روشی دیگر جهت تبدیل اعداد انگلیسی به فارسی در اکسل میدانید؟ روش خود را در قسمت دیدگاههای این پست با ما درمیان بگذارید.
40 دیدگاه ها
سلام و سپاس جناب دارابی
با استفاده از کدهای ویژوال بیسیک خیلی خوب بود داداش دمت گرم
عالی بود
واقعا ممنونم من همیشه مشکل داشتم خیلی روش های خوبی
آموزش دادید.
سلام با استفاره از روش تغییر فرمت سلول پس از استفاده از فونت ایران سنس هنگامی که از جداکننده هزارگان در نوشتن اون ترکیب در فرمت میکنم ، هنگامی که نتیجه محاسبات صفر می شود ، صفری تایپ نمی شود ، سلول خالی نشان می دهد ، شما راه حلی دارید ؟
سلام به شما دوست عزیز
لطفا سوالات خودتون رو در انجمن پرسش و پاسخ اکسل ایران به آدرس زیر مطرح بفرمایید، با تشکر
https://forum.exceliran.com/
سلام
واقعا عالی بود ممنونم
حتی با Replace کردن تک تک اعداد ۱ تا ۹ مشکلم حل نشد
از کد [$-۳۰۲۰۴۲۹]General استفاده کردم کاملا برطرف شد.
خیلی ممنونم. استفاده کردم. برای فارسی کردن اعداد نمودارهای سوالات امتحانم مشکل داشتم.
در اکسل برای فارسی کردن اعداد لاتین و برعکس به روش خیلی ساده می توانیم از گزینه Text Direction در منوی Home استفاده کرده و با انتخاب گزینه Right to Left محدوده اعداد انتخابی را فارسی نمود،و با انتخاب گزینه Left to Right دوباره اعداد را تبدیل به لاتین کنیم.
بسار عالی بود
مشکلم حل شد
بر امواتت رحمت ، بابا چه فومولی چه کدی چه بیسیکی
تمام آقا دمت گرم
سلام مهندس بسیار عالی
من یک مشکل داشتم ویندوز را عوض کردم و افیس ۲۰۱۹ نصب کردم حال وقتی داخل سلول اکسل عدد را در حالی که فونت فارسی هست تایپ میکنم لاتین نوشته میشه وبعد تز رفتن به سلول بعدی به فارسی تبدیل میشه من میخوام هنگام تایپ فارسی تایپ بشه چگار کنم
سلام
دقیق متوجه منظورتون نشدم ، از فرمت های گفته شده در پست برای یک ستون استفاده کنید و سپس تست کنید کارتون رو ببینید بازم همین مشکل هست
در صورت سوال مجدد لطفا برای دریافت پاسخ سریعتر و دقیق تر در انجمن اکسل ایران سوالتون رو مطرح بفرمایید.
سلام
دقیقا مشکل من هم همینه و نتونستم مشکل را حل کنم!
برای بهتر مشخص شدن مشکل:
1- ویندوز 10 نصب کردم و زبان فارسی و لوکیشن ایران رو در تنظیمات ویندوز تنظیم کردم به صورتی که به راحتی فارسی تایپ میکنم و تاریخ ویندوز هم فارسی است.
2- آفیس 2019 و مجموعه کل فونت های فارسی موجود را نصب کردم.
3- فونت یک سلول رو در حالت فارسی میگذارم (برای مثال B_Titr)
4- وقتی برای مثال عدد 255 رو تایپ میکنم، در حین تایپ اعداد به صورت انگلیسی نمایش داده می شود و وقتی اینتر میزنم و سلول از حالت تایپ خارج می شود عدد به صورت فارسی و با فونت B_Titr و به درستی نمایش داده می شود.
من حتی نسخه فارسی ساز هم از خود مایکروسافت دانلود و نصب کردم ولی مشکل حل نشد!
مشکل از کجاست؟؟؟
سلام دوست عزیز
اگر شما کیبورد استاندارد فارسی رو نصب و فعال کنید و هنگام نوشتن اعداد از اعداد قسمت num pad استفاده نکنید مشکلتون حل میشه.
سلام بعد نصب ویندوز حتما هم زبان فارسی و سپس پک فونت فارسی نصب کنید. و متن رو فونتش و فارسی و دایرکشن و راست ب چپ کنید.
عالی بود مرسی
سلام
متشکرم
با سلام
اگر بخوایم این کار رو انجام بدیم بدون اینکه فرمت سلول رو تغییر بدیم راهی هست؟
من میخوام تو سلولی که هم عدد داره هم حروف فقط اعداد رو به یه فونت فارسی تغییر بدم، چکار باید بکنم؟
سلام دوست عزیز
تنها راهی که من سراغ دارم استفاده از فونت هایی هست که اعداد انگلیسی ندارند.
مثل فونت ایران سنس فارسی
البته بهترین روش فارسی کردن اعداد نمودار در اکسل این است که به کنترل پنل بروید در قسمت LANGUAGE پایین پنجره باز شده قسمت ADDITIONAL رفته و در پنجره باز شده جدید پاین ترین قسمت پنجره به قسمت USE NATIVE DIGITS رفته و گزینه NATIONAL را انتخاب کنید به این روش کلیه اعداد روی نمودار شما فارسی می شود
من قبلا با هر فونتی کافی بود فقط فارسی بنویسم تا اعداد هم فارسی باشه . حالا ویندوز عوض کردم و دیگه اینطور نیست . از چ راهی دوباره این حالتی بشه ؟
سلام دوست عزیز
شما باید کیبورد استاندارد فارسی نصب کنید. با اینکار اعداد قسمت numpad اعداد انگلیسی و قسمت حروف اعداد فارسی تایپ خواهد کرد.
موفق باشید
سلام خسته نباشید
توی برنامه اکسل زمانی که فایل اکسل رو باز میکنم اخطاری مبنی بر اینکه فایل با این برنامه همخونی نداره میده.البته در برخی از فایل ها اینطوره.
و زمانی که از این نوع فایل ها متنی کپی میکنم و در پنجره تازه پیست میکنم جای سلول های ازچپ میاد راست و همچنین برعکس .لطفا اگه راه حلی بلدید ارائه بدید؟
خیلی ممنون از زحماتتون
یه راه خیلی راحت تر و بی دردسر تر هم اینه که از یه فونت با اعداد فارسی مثل بی میترا یا شبنم یا صمیم یا….. استفاده کنیم.
سلام دوست عزیز
روشی که فرمودین به عنوان اولین روش ارائه شده بود.
سلام وقت بخیر
خیلی خوب و عالی
ممنون
سلام و خدا قوت
بسیار عالی بود
مممنونم
دمت گرم واقعا مهندسی
عااالی توضیح دادین،ممنون
خدا خیرتون بده یه دنیا ممنون
ممنون از راهنمایی تون.
سلام بسیار مفید بود ممنونم
ممنون از این مطلب کاربردی
سلام چگونه اعداد انگلیسی را فارسی کنیم؟
سلام
به متن پست مراجعه بفرمایید. انواع روش های فارسی کردن اعداد توضیح داده شده
ممنون بابت سایت خوب و اطلاعات خوبتون
ممنون بابت سایت خوب و اطلاعات خوبتون
عاااالی بود
مرررسی عااالی بود
خیلی عالی سپاسگزارم.
موفق و موید باشید.