ভিবিএ স্ট্রাকম্প | স্ট্রোকম্প ফাংশন ব্যবহার করে ভিবিএতে স্ট্রিংগুলির তুলনা করুন
এক্সেল ভিবিএ স্ট্রকম্প্প ফাংশন
ভিবিএ স্ট্রকম্প দুটি স্ট্রিংয়ের মান একই আছে কিনা তা তুলনা করতে ব্যবহৃত একটি অন্তর্নির্মিত ফাংশন। তবে ফলাফলগুলি কার্যপত্রকের মতো সত্য বা মিথ্যা হিসাবে ডিফল্ট হয় না বরং এটি ভিন্ন।
ফলাফলগুলি দেখার আগে আমাকে প্রথমে আপনাকে StrComp ফাংশনটির বাক্য গঠনটি দেখাতে দিন।
- স্ট্রিং 1: স্ট্রিং 1 হল প্রথম স্ট্রিং বা মান যা আমরা তুলনা করছি।
- স্ট্রিং 2: স্ট্রিং 2 হল দ্বিতীয় স্ট্রিং বা মান যার সাথে আমরা তুলনা করছি স্ট্রিং ঘ.
- তুলনা করা: আমরা এখানে তিনটি বিকল্প সরবরাহ করতে পারি।
- 0 = বাইনারি তুলনা করুন। এটি কেস সংবেদনশীল গণনা সম্পাদন করে। উদাহরণস্বরূপ, "হ্যালো" "হেলো" এর সমান নয় কারণ উভয় শব্দের কেসই আলাদা। আপনি যদি এই পরামিতিটিকে অগ্রাহ্য করেন তবে এটি ডিফল্ট মান। vbBinaryCompare
- 1 = পাঠ্য তুলনা করুন। এই বিকল্পটি অ-কেস সংবেদনশীল গণনা সম্পাদন করে। উদাহরণস্বরূপ, "হ্যালো" "হেলো" ইভেন্টের সমান, যদিও উভয় শব্দের কেসই আলাদা। vbTextCompare
- 2 অ্যাক্সেস তুলনা করুন। এটি ডাটাবেস তুলনা করে।
স্ট্রিং তুলনা (StrComp) ফাংশন ফলাফল
যেমন আমি বলেছি যখন আমরা কার্যপত্রকটিতে দুটি মান তুলনা করি আমরা ফলকে সত্য বা মিথ্যা হিসাবে পাই। তবে ভিবিএ স্ট্রিংয়ের সাথে তুলনা ফাংশনের ফলাফলগুলি একই নয়।
- আমরা যখন শূন্য (0) পাই স্ট্রিং ঘ সমান স্ট্রিং 2।
- আমরা একটি (1) পাই যখন স্ট্রিং ঘ মান এর চেয়ে বড় স্ট্রিং 2 মান.
- আমরা যখন মাইনাস ওয়ান (-1) পাই স্ট্রিং ঘ মান কম হয় স্ট্রিং 2
- আমরা যখন NULL পেতে স্ট্রিং ঘ বা স্ট্রিং 2 মান NULL হয়।
ভিবিএ স্ট্রকম্প্প ফাংশন ব্যবহারের উদাহরণ
আপনি এই ভিবিএ স্ট্রকম্প্প এক্সেল টেম্পলেটটি এখানে ডাউনলোড করতে পারেন - ভিবিএ স্ট্রকম্প্প এক্সেল টেম্পলেটউদাহরণ # 1
আসুন একটি সাধারণ উদাহরণ দিয়ে শুরু করি। উদাহরণস্বরূপ, আমরা দুটি মানের তুলনা করব অর্থাত্ "এক্সেল ভিবিএ" এবং "এক্সেল ভিবিএ"।
কোড:
সাব স্ট্রম্পম্প_সাম্প্রেশন ১ () স্ট্রিং হিসাবে ডিম ফার্স্টভ্যালু 'স্ট্রিং হিসাবে স্ট্রিং হিসাবে 1 মান স্ট্রিং হিসাবে ডিমে সেকেন্ডভ্যালু স্ট্রিং হিসাবে স্ট্রিং 2 মান ডিম রেজাল্ট স্ট্রোক করার জন্য স্ট্রিংকম্প সূত্রের প্রথম ফলাফল = "এক্সেল ভিবিএ" "স্ট্রিং 1 মান সেকেন্ড ভ্যালু = বরাদ্দ করুন "এক্সেল ভিবিএ" 'স্ট্রিং 2 মান নির্ধারণ করুন ফলাফল = স্ট্রোকম্প (ফার্স্টভ্যালু, সেকেন্ডভ্যালু, ভিবিবাইনারিকম্পার)' স্ট্রিমকম্প ফাংশন প্রয়োগ করুন এমএসজিবক্স ফলাফল 'বার্তা বাক্সে ফলাফলটি দেখান শেষ সাব
আমি এই কোডটি চালানোর সময় আমরা জিরো পেয়ে যাব (0) উভয় কারণ হিসাবে স্ট্রিং ঘ এবং স্ট্রিং 2 মান একই।
উদাহরণ # 2
এখন আমি দুটি শব্দের ক্ষেত্রে পরিবর্তন করব।
স্ট্রিং 1 = এক্সেল ভিবিএ
স্ট্রিং 2 = এক্সেল ভিবিএ
কোড:
সাব স্ট্রাকম্প_সাম্পুন2 () স্ট্রিং হিসাবে ডিম ফার্স্টভ্যালু 'স্ট্রিং হিসাবে স্ট্রিং হিসাবে 1 মান স্ট্রিং হিসাবে ডিমে সেকেন্ডভ্যালু' স্ট্রিং হিসাবে 2 টি ডিম স্ট্রাক হিসাবে ডিম রেজাল্ট স্ট্রিংয়ের ফলাফল স্ট্রাকম্প ফর্মুলা ফার্স্টভ্যালু = "এক্সেল ভিবিএ" স্ট্রিং 1 মান সেকেন্ড ভ্যালু = বরাদ্দ করুন "এক্সেল ভিবিএ" 'স্ট্রিং 2 মান নির্ধারণ করুন ফলাফল = স্ট্রোকম্প (ফার্স্টভ্যালু, সেকেন্ডভ্যালু, ভিবিবাইনারিকম্পার)' স্ট্রিমকম্প ফাংশন প্রয়োগ করুন এমএসজিবক্স ফলাফল 'বার্তা বাক্সে ফলাফলটি দেখান শেষ সাব
আমি এই কোডটি চালানোর সময় আমরা পেয়ে যাব 1 কারণ যেহেতু আমরা হিসাবে যুক্তি তুলনা সরবরাহ "vbBinaryCompare " এটি কেস সংবেদনশীল চরিত্রগুলির জন্য পরীক্ষা করবে।
এখন আমি পরিবর্তন করব তুলনা করা "থেকে বিকল্পvbBinaryCompare " প্রতি "vbTextCompare "
কোড:
সাব স্ট্রাকম্প_সাম্প্রনিক ৩ () স্ট্রিং হিসাবে ডিম ফার্স্টভ্যালু 'স্ট্রিং হিসাবে স্ট্রিং হিসাবে 1 মান স্ট্রিং হিসাবে ডিমে সেকেন্ডভ্যালু' স্ট্রিং হিসাবে 2 টি ডিম রেজাল্ট স্ট্রোক করতে স্ট্রিংকম্প সূত্রের রেজাল্ট ফার্স্টভ্যালু = "এক্সেল ভিবিএ" স্ট্রিং 1 মান সেকেন্ড ভ্যালু = বরাদ্দ করুন "এক্সেল ভিবিএ" 'স্ট্রিং 2 মান নির্ধারণ করুন ফলাফল = স্ট্রোকম্প (ফার্স্টভ্যালু, সেকেন্ডভ্যালু, ভিবিটেক্সটকম্পার)' স্ট্রিংকম্প ফাংশন প্রয়োগ করুন এমএসজিবক্স ফলাফল 'বার্তা বাক্সে ফলাফলটি দেখান শেষ সাব
এর সাথে তুলনা করা, আমরা শূন্য পাবেন (0) কারণ vbaTextCompare সংবেদনশীল শব্দগুলিকে উপেক্ষা করে।
উদাহরণ # 3
কন্ডিশনের সাথে ভিবিএ স্ট্রকম্পের কেস স্টাডি
ধরে নিন আপনার নীচের চিত্রের মতো ডেটা রয়েছে।
আমাদের তুলনা করা দরকার স্ট্রিং ঘ সঙ্গে স্ট্রিং 2 এবং আগমন ফলাফল "এক্সটেক্ট" হিসাবে যদি উভয়ই এক হয়, অন্যথায় ফলাফলটি "সঠিক নয়" হওয়া উচিত।
নীচের কোডটি আমাদের জন্য কাজ করবে।
কোড:
সাব স্ট্রম্পম্প_সাম্প্রেশন 4 () স্ট্রিং ডিমে আমি ইন্টিজার হিসাবে ডিম আই হিসাবে 2 = 6 ফলাফল = স্ট্রোকম্প (সেল (i, 1)। মূল্য, ঘর (i, 2) ) .মূল্য = "সঠিক" অন্য কক্ষগুলি (i, 3)। মূল্য = "ঠিক না" শেষ হলে পরবর্তী আমি শেষ করব
আমি যখন এক্সেলের উপরের ভিবিএ কোডটি চালাব আমরা নীচের ফলাফলটি পাব।
আপনি যদি সি 4 সেল দেখুন স্ট্রিং ঘ এবং স্ট্রিং 2 অক্ষরগুলি একই তবে অক্ষরগুলি কেস সংবেদনশীল, ফলে ফলাফলটি "সঠিক নয়"। এই সমস্যাটি কাটিয়ে উঠতে আমাদের তুলনা হিসাবে সরবরাহ করতে হবে vbTextCompare।
সি 4 সেলটির "এক্সট্যাক্ট" হিসাবে ফলাফল পাওয়ার জন্য নীচে পরিবর্তিত কোড দেওয়া আছে।
কোড:
সাব স্ট্রম্পম্প_সাম্প্রেশন 4 () স্ট্রিং ডিমে আমি ইন্টিজার হিসাবে ডিম আই হিসাবে 2 = 6 ফলাফল = স্ট্রোকম্প (সেল (i, 1)। মূল্য, ঘর (i, 2) , 3) .মূল্য = "সঠিক" অন্য কোষ (i, 3)। মূল্য = "সঠিক নয়" শেষ যদি পরবর্তী আমি শেষ করি
এই কোড নীচের ফলাফল প্রদান করবে।