সুচিপত্র
ভিবিএতে কপি এবং পেস্ট করার সময় কাজ করার সময় আমরা যে সবচেয়ে সাধারণ সমস্যার সম্মুখীন হই তা হল রান টাইম ত্রুটি 1004 : রেঞ্জ ক্লাস ব্যর্থ হওয়ার বিশেষ পদ্ধতি পেস্ট করুন এই নিবন্ধে, আমি আপনাকে এই ত্রুটির পিছনে সম্ভাব্য কারণগুলি এবং সঠিক উদাহরণ এবং চিত্র সহ কীভাবে সেগুলি সমাধান করতে হবে তা দেখাব৷
অভ্যাস ওয়ার্কবুক ডাউনলোড করুন
আপনি যখন এই নিবন্ধটি পড়ছেন তখন ব্যায়াম করার জন্য এই অনুশীলন ওয়ার্কবুকটি ডাউনলোড করুন।
পেস্টস্পেশাল মেথড ফেইলড.xlsm
পেস্ট স্পেশাল মেথড অফ রেঞ্জ ক্লাস ব্যর্থ হয়েছে: কারণ এবং সমাধান
আর দেরি না করে চলুন আমাদের মূল আলোচনায় যাই। অর্থাৎ, এই ত্রুটির পিছনে সম্ভাব্য কারণগুলি কী হতে পারে এবং কীভাবে সেগুলি সমাধান করা যায়৷
কারণ 1: কোনো কিছু অনুলিপি না করে পেস্ট বিশেষ পদ্ধতি অ্যাক্সেস করা
এটি সবচেয়ে বেশি ত্রুটির পিছনে সাধারণ কারণ। অর্থাৎ, কিছু অনুলিপি না করেই পেস্টস্পেশাল পদ্ধতি অ্যাক্সেস করার চেষ্টা করুন।
এটি পরিষ্কারভাবে বোঝার জন্য, নিচের VBA কোডটি চেক করুন।
⧭ VBA কোড:
1556
এখানে, আমরা VBA এর PasteSpecial পদ্ধতি ব্যবহার করেছি ছাড়া যে কোনো কিছু অনুলিপি করা। সুতরাং আপনি যখন এটি চালান তখন এক্সেল একটি রান-টাইম ত্রুটি 1004 প্রদর্শন করবে।
⧭ সমাধান:
এই সমস্যাটি সমাধান করার জন্য, প্রথমে আপনাকে একটি পরিসর কপি করতে হবে তারপর পেস্টস্পেশাল পদ্ধতিতে অ্যাক্সেস করতে হবে।
8774
যখন আপনি এই কোডটি চালান, এটা হবেনির্বাচিত পরিসরে সক্রিয় ওয়ার্কশীটের B3:B5 রেঞ্জের সূত্রগুলি পেস্ট করুন৷
আরো পড়ুন: ওয়ার্কশীট ক্লাসের পেস্ট বিশেষ পদ্ধতি ব্যর্থ হয়েছে (কারণ ও সমাধান)
কারণ 2: বানান ত্রুটি সহ পেস্ট বিশেষ পদ্ধতি অ্যাক্সেস করা
এর পিছনে এটি আরেকটি সাধারণ কারণ ত্রুটি. অর্থাৎ, যেকোনো আর্গুমেন্টে বানান ত্রুটি(গুলি) সহ PasteSpecial পদ্ধতি অ্যাক্সেস করতে।
এটি পরিষ্কার করতে নিম্নলিখিত VBA কোডটি দেখুন। এখানে আমরা xlPasteAll যুক্তিতে একটি বানান ভুল করেছি।
⧭ VBA কোড:
2869
যখন আপনি এই কোডটি চালান, আপনি রান-টাইম ত্রুটি 1004 পাবেন।
⧭ সমাধান: <3
সমাধান সহজ। আমি নিশ্চিত যে আপনি ইতিমধ্যে এটি অনুমান করেছেন। শুধু নিশ্চিত করুন যে সমস্ত আর্গুমেন্টের বানান সঠিকভাবে করা হয়েছে।
এবং ত্রুটিটি স্বয়ংক্রিয়ভাবে অদৃশ্য হয়ে যাবে।
আরো পড়ুন: কীভাবে পেস্ট ব্যবহার করবেন এক্সেলের বিশেষ কমান্ড (5টি উপযুক্ত উপায়)
একই রকম রিডিং
- এক্সেল VBA: অন্য ওয়ার্কবুকে রেঞ্জ কপি করুন
- এক্সেল VBA দিয়ে পরবর্তী খালি সারিতে মানগুলি অনুলিপি করুন এবং আটকান (3টি উদাহরণ)
- VBA পেস্টস্পেশাল প্রয়োগ করুন এবং এক্সেলে উত্স ফর্ম্যাটিং রাখুন
- এক্সেলের একাধিক কক্ষে একই মান কীভাবে অনুলিপি করবেন (4 পদ্ধতি)
- মাপদণ্ডের উপর ভিত্তি করে অন্য ওয়ার্কশীটে সারিগুলি অনুলিপি করতে এক্সেল VBA
কারণ 3: একটি নতুন খোলাকপি করার পরে ওয়ার্কবুক যা কপি/পেস্ট মোড বাতিল করে
এটি ত্রুটির পিছনে আরেকটি গুরুত্বপূর্ণ কারণ। অর্থাৎ, পেস্ট করার আগে কপি/পেস্ট মোড বাতিল করে এমন কিছু করা।
স্পষ্টভাবে বোঝার জন্য নিচের কোডটি দেখুন।
⧭ VBA কোড:
3559
এখানে আমরা ওয়ার্কবুক1 নামে একটি ওয়ার্কবুকের শিট1 থেকে রেঞ্জ B3:B5 কপি করেছি।
তারপর আমরা একই ফোল্ডারে ওয়ার্কবুক2 নামে একটি নতুন ওয়ার্কবুক তৈরি করেছি এবং কপি করা রেঞ্জটিকে শিট1<এর B3:B5 রেঞ্জে পেস্ট করার চেষ্টা করেছি। সেই ওয়ার্কবুকের 2>।
কিন্তু যখন আমরা কোডটি চালাই, তখন এটি একটি পেস্ট স্পেশাল মেথড অফ রেঞ্জ ক্লাস ফেইলড ত্রুটি প্রদর্শন করবে, কারণ যে মুহূর্তে আমরা নতুন ওয়ার্কবুক তৈরি করব, কপি/পেস্ট মোড বাতিল করা হবে।
⧭ সমাধান:
এই সমস্যাটি সমাধান করতে প্রথমে লিখুন ওয়ার্কবুক2 নামে নতুন ওয়ার্কবুক তৈরি করতে কোডের লাইনের নিচে।
তারপর ওয়ার্কবুক1 সক্রিয় করতে লাইনগুলি সন্নিবেশ করুন এবং এটি থেকে পছন্দসই পরিসরটি কপি করুন।
এবং অবশেষে, সক্রিয় করুন ওয়ার্কবুক2 এবং সেখানে কপি করা পরিসীমা পেস্ট করুন।
1435
এই কোডটি চালান। এটি Workbook1 এর Sheet1 থেকে B3:B5 রেঞ্জটি কপি করবে।
এবং পেস্ট করবে ওয়ার্কবুক2 নামে নতুন তৈরি ওয়ার্কবুকের শিট1 এ।
⧭ সতর্কতা:
অবশ্যই, চালানোর সময় ওয়ার্কবুক1 খোলা রাখতে ভুলবেন নাকোড।
আরো পড়ুন: কিভাবে ম্যাক্রো ছাড়াই এক্সেলে কপি এবং পেস্ট নিষ্ক্রিয় করবেন (২টি মানদণ্ড সহ)
কারণ 4: Application.CutCopyMode কে False এ পরিণত করা যা কপি/পেস্ট মোড বাতিল করে
অবশেষে, ত্রুটি ঘটার অন্য কারণ থাকতে পারে। আমরা পেস্টস্পেশাল পদ্ধতি অ্যাক্সেস করার আগে ভুলবশত Application.CutCopyMode বন্ধ করে দিতে পারি।
যদিও এটি একটি খুব সাধারণ অভ্যাস নয়, তবুও মাঝে মাঝে আমরা যখন করতে চাই তখন আমরা এটি তৈরি করি দীর্ঘ সংখ্যক লাইন দিয়ে কাজ করুন।
এটি পরিষ্কারভাবে বোঝার জন্য নিচের কোডটি দেখুন। এখানে আমরা B3:B5 পরিসরটি কপি করেছি, কিন্তু পেস্ট করার আগে CutCopyMode বাতিল করেছি।
⧭ VBA কোড:
2775
যখন আপনি কোডটি চালাবেন, এটি দেখাবে পেস্টস্পেশাল মেথড অফ রেঞ্জ ক্লাস ফেইলড ত্রুটি৷
⧭ সমাধান:
আমার ধারণা এখন পর্যন্ত আপনারা সবাই সমাধানটি অনুমান করে ফেলেছেন। এটা আসলে বেশ সহজ। কোড থেকে লাইনটি সরিয়ে ফেলুন যা CutCopy মোড বন্ধ করে দেয়।
সুতরাং, সঠিক VBA কোডটি হবে:
3553
এটি B3:B5 পরিসরটি অনুলিপি করবে এবং কোন ঝামেলা ছাড়াই এটি D3:D5 এর উপরে পেস্ট করবে।
আরো পড়ুন: VBA পেস্ট স্পেশাল এক্সেলে মান এবং ফরম্যাট কপি করার জন্য (9 উদাহরণ)
মনে রাখার জিনিস
এখানে আমি শুধুমাত্র সেই সমস্যাগুলি দেখিয়েছি যা আপনি VBA এ PasteSpecial পদ্ধতির সাথে কাজ করার সময় সম্মুখীন হতে পারেন৷ যদি আপনি পেস্টস্পেশাল পদ্ধতিটি বিস্তারিতভাবে জানতে চান, এই লিঙ্কটি দেখুন।
উপসংহার
সুতরাং, সংক্ষেপে, এইগুলি আপনার কোডে রান-টাইম ত্রুটি 1004: পেস্ট স্পেশাল মেথড ও রেঞ্জ ক্লাস ব্যর্থ কারণ হতে পারে। আমি আশা করি আপনি সমস্ত পয়েন্ট পরিষ্কারভাবে বুঝতে পেরেছেন এবং সেগুলি ভবিষ্যতে আপনাকে অনেক সাহায্য করবে। আপনি কি অন্য কোন কারণ জানেন? এবং আপনার কোন সমস্যা আছে? আমাদের জিজ্ঞাসা নির্দ্বিধায়. এবং আরো পোস্ট এবং আপডেটের জন্য আমাদের সাইট ExcelWIKI দেখতে ভুলবেন না।