ভিজ্যুয়াল বেসিক ফর অ্যাপ্লিকেশান (ভিবিএ) হল মাইক্রোসফ্ট দ্বারা তৈরি ভিজ্যুয়াল বেসিক প্রোগ্রামিং ভাষার একটি বাস্তবায়ন। VBA ব্যবহার করা যেতে পারে UDF সক্রিয় করার জন্য, কাজগুলি স্বয়ংক্রিয় করার জন্য এবং DLL এর মাধ্যমে WinAPI অ্যাক্সেস করার জন্য। যাইহোক, বেশ সম্প্রতি, অনেকগুলি রিপোর্ট আসছে যেখানে ব্যবহারকারীরা নির্দিষ্ট কমান্ডগুলি কার্যকর করতে অক্ষম এবং একটি “সাবস্ক্রিপ্ট অফ রেঞ্জ, ত্রুটি 9 এটি করার চেষ্টা করার সময় পপ আপ হয়৷
VBA-তে "সাবস্ক্রিপ্ট অফ রেঞ্জ" ত্রুটির কারণ কী?
একাধিক ব্যবহারকারীর কাছ থেকে অসংখ্য প্রতিবেদন পাওয়ার পর, আমরা সমস্যাটি তদন্ত করার সিদ্ধান্ত নিয়েছি এবং এটি সম্পূর্ণরূপে ঠিক করার জন্য সমাধানের একটি সেট তৈরি করেছি৷ এছাড়াও, যে কারণে এটি ট্রিগার হয়েছে তা আমরা দেখেছি এবং সেগুলিকে নিম্নরূপ তালিকাভুক্ত করেছি৷
- অ-বিদ্যমান উপাদান: কিছু ক্ষেত্রে, এটা সম্ভব যে আপনি কমান্ডে এমন একটি উপাদান উল্লেখ করেছেন যা বিদ্যমান নেই। এটা সম্ভব যে সাবস্ক্রিপ্টটি সম্ভাব্য সাবস্ক্রিপ্টের পরিসরের চেয়ে বড় বা ছোট বা অ্যাপ্লিকেশনটিতে এই সময়ে অ্যারেতে মাত্রা বরাদ্দ করা হয়নি৷
- অনির্ধারিত উপাদান: এটা সম্ভব যে আপনি আপনার কোডে উপাদানের সংখ্যা শনাক্ত করেননি, এটি গুরুত্বপূর্ণ যে একটি অ্যারের উপাদানের সংখ্যা "ডিম" বা "রিডিম" কমান্ড ব্যবহার করে সংজ্ঞায়িত করা হয়।
- ভুল সংগ্রহের সদস্য: কিছু ক্ষেত্রে, ব্যবহারকারী এমন একটি সংগ্রহের সদস্য উল্লেখ করেছেন যা বিদ্যমান নেই। সংগ্রহের সদস্যের প্রতি একটি ভুল রেফারেন্স করা হলে, এই ত্রুটিটি ট্রিগার হতে পারে।
- শর্টহ্যান্ড স্ক্রিপ্ট: এটা সম্ভব যে আপনি সাবস্ক্রিপ্টের একটি শর্টহ্যান্ড ফর্ম ব্যবহার করেছেন এবং এটি অন্তর্নিহিতভাবে একটি উপাদান নির্দিষ্ট করেছে যা অবৈধ ছিল। একটি বৈধ কী নাম ব্যবহার করা গুরুত্বপূর্ণ।
এখন যেহেতু আপনি সমস্যার প্রকৃতি সম্পর্কে প্রাথমিক ধারণা পেয়েছেন, আমরা সমাধানের দিকে এগিয়ে যাব। বিরোধ এড়াতে যে নির্দিষ্ট ক্রমে এগুলি উপস্থাপন করা হয়েছে সেগুলিকে প্রয়োগ করা নিশ্চিত করুন৷
সমাধান 1:অ্যারে পরীক্ষা করা হচ্ছে
এটা সম্ভব যে আপনি অ্যারে উপাদানের জন্য একটি ভুল মান সংজ্ঞায়িত করেছেন। অতএব, অ্যারে উপাদানের জন্য আপনি যে মানটি সংজ্ঞায়িত করেছেন তা দুবার চেক করার পরামর্শ দেওয়া হচ্ছে এবং নিশ্চিত করুন যে এটি সঠিক। এছাড়াও, নিশ্চিত করুন যে আপনি অ্যারের ঘোষণা চেক করেছেন এবং যাচাই করুন উপরের এবং নীচের সীমানা। যদি অ্যারেগুলি পুনরায় পরিমাপ করা হয়, তবে LBound ব্যবহার করতে ভুলবেন না এবং UBound শর্ত অ্যাক্সেস ফাংশন. যদি সূচকটি একটি পরিবর্তনশীল হয় তবে পরিবর্তনশীল নামের বানান পরীক্ষা করুন।
সমাধান 2:উপাদানের সংখ্যা নির্দিষ্ট করা
কিছু ক্ষেত্রে, এটা সম্ভব যে আপনি আপনার কোডের উপাদানগুলির সংখ্যা নির্ধারণ নাও করতে পারেন যার কারণে ত্রুটিটি ট্রিগার হচ্ছে৷ এটি সুপারিশ করা হয় যে আপনি ডিম ব্যবহার করে অ্যারের উপাদানগুলির সংখ্যা নির্দিষ্ট করুন৷ অথবা রিডিম ফাংশন।
সমাধান 3:গঠন পরিবর্তন করা
এই ত্রুটিটি সাধারণত ট্রিগার হয় যখন ব্যবহারকারী একটি ভুল বা অস্তিত্বহীন সংগ্রহ সদস্য নির্দিষ্ট করে। অতএব, সূচী উপাদানগুলি নির্দিষ্ট করার পরিবর্তে, এটি সুপারিশ করা হয় যে আপনি “প্রতিটির জন্য…পরবর্তী-এর সাথে যোগাযোগ করুন " নির্মাণ৷
৷সমাধান 4:মূল নাম এবং সূচক পরীক্ষা করা হচ্ছে
কিছু ক্ষেত্রে, এটা সম্ভব যে আপনি সাবস্ক্রিপ্টের একটি শর্টহ্যান্ড ফর্ম ব্যবহার করেছেন এবং এটি একটি অবৈধ উপাদান নির্দিষ্ট করে। অতএব, আপনাকে একটি বৈধ কী ব্যবহার করার পরামর্শ দেওয়া হচ্ছে৷ নাম এবং সূচক সংগ্রহের জন্য।