ভিবিএ এসসি | এক্সেল ভিবিএতে এসসি ফাংশন কীভাবে ব্যবহার করবেন? (ASCII অক্ষর কোড)

এক্সেল ভিবিএ এসসি ফাংশন

ভিবিএতে অ্যাস্ক ফাংশনটি একটি পূর্ণসংখ্যার মানটি ফেরত দিতে ব্যবহৃত হয় যা সরবরাহিত স্ট্রিংয়ের প্রথম অক্ষরের (স্ট্রিংকে আর্গুমেন্ট / প্যারামিটার হিসাবে সরবরাহ করা) ফাংশনটির সাথে সম্পর্কিত একটি অক্ষর কোড উপস্থাপন করে। এটি ম্যাক্রো কোডে ব্যবহার বা দেওয়া যেতে পারে যা সাধারণত ভিজ্যুয়াল বেসিক সম্পাদকের মাধ্যমে প্রবেশ করা হয়।

যে এক্সেল পরিবেশে ম্যাক্রো ভিজ্যুয়াল বেসিক সম্পাদক (ভিবিই) তে চলে তা ম্যাক্রো কোডগুলি সম্পাদনা করতে এবং ডিবাগ করতে ব্যবহৃত হতে পারে। এটি ম্যাক্রো কোড ধারণ করে এবং এটি এক্সেল ওয়ার্কবুকের সাথে লিঙ্ক করে।

Asc ফাংশন দ্বারা প্রত্যাশিত পূর্ণসংখ্যা মান হ'ল ভিবিএতে সংশ্লিষ্ট ASCII অক্ষর কোড। এএসসিআইআই (আমেরিকান স্ট্যান্ডার্ড কোড ফর ইনফরমেশন ইন্টারচেঞ্জ) হ'ল একটি 7-বিট অক্ষর এনকোডিং যা মোট 128 টি অক্ষর সংজ্ঞায়িত করেছে যার মধ্যে রয়েছে লাতিন বর্ণমালা, দশটি আরবি সংখ্যা, কিছু বিরাম চিহ্ন এবং নিয়ন্ত্রণ অক্ষর। এতে ডায়াক্রিটিক্যাল অক্ষর অন্তর্ভুক্ত হয় না কারণ তাদের এনকোডিংয়ের জন্য সর্বনিম্ন 8-বিটের স্থান প্রয়োজন। এই 8-বিট কোডিংটি এএনএসআই (আমেরিকান ন্যাশনাল স্ট্যান্ডার্ড ইনস্টিটিউট) দিয়ে সম্পন্ন হয়েছে যেখানে মোট 256 টি অক্ষর সংজ্ঞায়িত হয়েছে। এএনএসআইকে বর্ধিত এএসসিআইআইও বলা হয়।

ভিবিএ এসসি ফাংশনের সিনট্যাক্স

ASC ফাংশনের জন্য সাধারণ সিনট্যাক্স নিম্নরূপ:

এএসসি সূত্র সিনট্যাক্সের নিম্নলিখিত যুক্তি রয়েছে:

স্ট্রিং: প্রয়োজনীয়, পাঠ্যের স্ট্রিং প্রতিনিধিত্ব করে যার প্রথম অক্ষরের সংশ্লিষ্ট চরিত্রের কোডটি পছন্দসই এবং প্রত্যাবর্তনযোগ্য।

যদি সরবরাহ করা স্ট্রিংটিতে একটি মাত্র অক্ষর থাকে তবে ফাংশনটি স্পষ্টতই সেই চরিত্রটির জন্য সংখ্যার অক্ষর কোডটি দেয়।

এক্সেল ভিবিএ এসসি এর উদাহরণসমূহ

আসসটি কীভাবে এক্সেল ভিবিএতে ব্যবহৃত হতে পারে তা নীচে দেখুন।

আপনি এই ভিবিএ এসসি ফাংশন এক্সেল টেম্পলেটটি এখানে ডাউনলোড করতে পারেন - ভিবিএ এসসি ফাংশন এক্সেল টেম্পলেট

উদাহরণ # 1

আমাদের বলুন যে আমাদের কাছে একটি এক্সেল ফাইল রয়েছে যাতে কয়েকটি স্ট্রিং রয়েছে এবং আমরা এই স্ট্রিংগুলির সাথে এসসি ফাংশনটি ব্যবহার করতে চাই। আসুন ফাইলটিতে থাকা স্ট্রিংগুলি দেখুন:

আমরা ভিবিএতে এসসি ফাংশনটি একটি ম্যাক্রোতে ব্যবহার করি যা ভিজ্যুয়াল বেসিক সম্পাদকটিতে লেখা যেতে পারে এবং নীচে প্রবেশ করা যেতে পারে:

বিকাশকারী যান এবং তারপরে ম্যাক্রোতে ক্লিক করুন:

এখন একটি ম্যাক্রো নাম তৈরি করুন: ‘ম্যাক্রো নেম’ এর অধীনে যে ম্যাক্রো তৈরি হতে ইচ্ছুক রয়েছে তার একটি নাম লিখুন এবং ‘ম্যাক্রো ইন’ এর ড্রপডাউনতে পার্সোনাল.এক্সএলএসবি নির্বাচন করুন। ম্যাক্রোগুলি একটি ব্যক্তিগত ওয়ার্কবুকে সংরক্ষণ করা যেতে পারে যা একটি লুকানো ওয়ার্কবুক যা যখনই এক্সেল শুরু হয় তখন পটভূমিতে খোলে। পার্সোনাল.এক্সএলএসবি নির্বাচন করা ব্যক্তিগত ওয়ার্কবুকে ম্যাক্রোগুলিকে সংরক্ষণ করবে এইভাবে ব্যক্তিগত কর্মবুক সিস্টেম / ফাইল নির্দিষ্ট নয় বলে ম্যাক্রো সর্বদা উপলব্ধ করে তোলে।

‘তৈরি করুন’ এ ক্লিক করুন।

এটি ভিজ্যুয়াল বেসিক সম্পাদকটিতে একটি ভিবিএ সাব পদ্ধতি সহ একটি উইন্ডো খুলবে:

এখন, পরিবর্তনশীল ফলাফলটি সংজ্ঞায়িত করুন

কোড:

সাব কোড () ডিমে রেজাল্ট 1 এন্ড সাব

স্ট্রিংয়ের অক্ষর কোডটি ফেরত দেওয়ার জন্য সূত্রের সাথে পরিবর্তনশীল রেজাল্ট 1 নির্ধারণ করুন:

কোড:

সাব কোড () ডিম রেজাল্ট 1 রেজাল্ট 1 = এসসি ("রাজ") শেষ সাব

এখন রেজাল্ট 1 এর ফলস্বরূপ মানটি একটি ভিবিএ বার্তা বাক্স (এমএসজিবক্স) ব্যবহার করে প্রদর্শিত এবং ফিরে আসতে পারে:

কোড:

সাব কোড () ডিম রেজাল্ট 1 রেজাল্ট 1 = এসসি ("রাজ") এমএসজিবক্স রেজাল্ট 1 সমাপ্ত সাব

এখন যখন আমরা উইন্ডোটির শীর্ষে ‘রান’ ক্লিক করে বা এফ 5 টিপে এই কোডটি ম্যানুয়ালি রান করি, আমরা স্ট্রিংয়ের প্রথম অক্ষরের অক্ষর কোডটি পাই: "রাজ" একটি বার্তা বাক্সে প্রদর্শিত:

সুতরাং, আমরা উপরের স্ক্রিনশটে দেখতে পাচ্ছি যে ম্যাক্রো চালানোর সময়, ‘82’ একটি বার্তা বাক্সে ফিরে আসে। এটি বোঝায় যে ‘আর’ এর জন্য অক্ষর কোডটি 82।

এখন, উপরের উদাহরণে বলা যাক আমরা স্ট্রিংয়ের জন্য অক্ষর কোডটি খুঁজতে চাই: "করণ"। এটি করার জন্য, আমরা উপরের মতো একই পদক্ষেপগুলি অনুসরণ করি।

কোড পরিবর্তে রাজ আমরা এর চরিত্র কোড পেতে করণ লিখব।

কোড:

 সাব স্ট্রিং 2 () ডিম রেজাল্ট 2 রেজাল্ট 2 = এসসি ("করণ") এমএসজিবক্স রেজাল্ট 2 শেষ সাব 

এখন আমরা এই কোডটি ম্যানুয়ালি বা F5 টিপে চালাচ্ছি এবং আমরা স্ট্রিংয়ের প্রথম অক্ষরের অক্ষর কোডটি পেয়েছি: "করণ" একটি বার্তা বাক্সে প্রদর্শিত:

সুতরাং, আমরা উপরের স্ক্রিনশটে দেখতে পাচ্ছি যে ম্যাক্রো চালানোর সময়, ‘75’ একটি বার্তা বাক্সে ফিরে আসে। এটি বোঝায় যে ‘কে’ এর জন্য একটি অক্ষর কোড 75 75

এখন আসুন দেখুন কীভাবে বাকী স্ট্রিংগুলির ফলাফল পরিবর্তন হয়:

কোড:

 সাব স্ট্রিং 3 () ডিম রেজাল্ট 2 রেজাল্ট 2 = এসসি ("হিনা") এমএসজিবক্স রেজাল্ট 2 শেষ সাব 

 সাব স্ট্রিং 4 () ডিম রেজাল্ট 2 রেজাল্ট 2 = এসসি ("অরুণ") এমএসজিবক্স রেজাল্ট 2 শেষ সাব 

 সাব স্ট্রিং 5 () ডিম রেজাল্ট 2 ফলাফল 2 = এসসি ("এ") এমএসজিবক্স ফলাফল 2 সমাপ্ত সাব 

 সাব স্ট্রিং (() ডিম রেজাল্ট ২ রেজাল্ট ২ = এসসি ("এ") এমএসজিবক্স রেজাল্ট ২ শেষ সাব 

এই উপ-প্রক্রিয়াগুলি একের পর এক চালানোর পরে, নিম্নলিখিত বর্ণচিহ্নগুলি বার্তা বাক্সে ফিরে আসে (যথাক্রমে একবারে)। এটি উপরের স্ট্রিংগুলির জন্য প্রত্যাশিত সম্পর্কিত মানগুলির তালিকা।

সুতরাং, উপরের স্ক্রিনশটটি চিত্রিত হিসাবে, আমরা দেখতে পাচ্ছি যে ASC ফাংশনটি স্ট্রিংয়ের জন্য 65 হিসাবে অক্ষর কোডটি দেয়: "অরুণ", এবং স্ট্রিংয়ের জন্য: "এ"। এটি কারণ চরিত্রের কোডটি হ'ল ভিবিএ ASCII বা স্ট্রিংয়ের একের বেশি অক্ষরের ক্ষেত্রে স্ট্রিংয়ের প্রথম বর্ণের সমতুল্য অক্ষর কোড। অতএব, স্ট্রিংয়ের প্রাথমিক বা প্রথম চরিত্র হিসাবে 65 টি ফেরত দেওয়া হয়েছে: "অরুণ" এছাড়াও 'এ'।

উদাহরণ # 2

যদি ভিবিএ এএসসি ফাংশনে প্যারামিটার / আর্গুমেন্ট হিসাবে সরবরাহ করা স্ট্রিংটি খালি / ফাঁকা স্ট্রিং (বা কোনও অক্ষরবিহীন একটি স্ট্রিং) হয়, তবে ফাংশনটি রান-টাইম ত্রুটি প্রদান করে।

নিম্নলিখিত কোড একই ব্যাখ্যা করে।

 সাব ফাঁকা () ডিমের ফলাফল ফলাফল = এসসি ("") এমএসজিবক্স (ফলাফল) শেষ সাব 

যখন আমরা এই কোডটি চালাই, আমরা রান-টাইম ত্রুটি নিম্নলিখিতভাবে পাই।

সুতরাং, আমরা উপরের স্ক্রিনশটে দেখতে পাচ্ছি যে যখন ASC ফাংশনটিতে প্যারামিটার বা আর্গুমেন্ট হিসাবে সরবরাহ করা স্ট্রিং ফাঁকা / খালি হয়, তখন ফাংশনটি রান-টাইম ত্রুটি প্রদান করে।

মনে রাখার মতো ঘটনা

  • ভিবিএ এএসসি ফাংশনে সরবরাহ করা স্ট্রিংটি কোনও বৈধ স্ট্রিং এক্সপ্রেশন হতে পারে।
  • Asc ফাংশনটি কেস-সংবেদনশীল।
  • Asc ফাংশন দ্বারা প্রাপ্ত পূর্ণসংখ্যার মান 0-255 এর মধ্যে থাকে।
  • A-Z এর জন্য ভিবিএতে ASCII কোডগুলি 65-90, এবং a-z এর জন্য 97-122।
  • ম্যাক্রো বা উপ-পদ্ধতিতে প্রদত্ত নামটি ভিবিএতে কোনও ডিফল্ট ফাংশনের নাম হতে পারে না। যদি নামকরণ করা হয়, তবে উপ-পদ্ধতিটি একটি ত্রুটি প্রদর্শন করবে।