এক্সেল ভিবিএতে VLOOKUP | কীভাবে ভিবিএতে ভিএলইউকিউপি কোড লিখবেন?

ভেলকআপ এক্সেলের একটি ওয়ার্কশিট ফাংশন তবে এটি ভিবিএতেও ব্যবহার করা যেতে পারে, ভ্লিউআপের কার্যকারিতা ভিবিএ এবং ওয়ার্কশিট উভয় ক্ষেত্রেই একই রকম, কারণ এটি একটি ওয়ার্কশিট ফাংশন যা ভিবিএতে ভ্লুকআপ ব্যবহারের পদ্ধতিটি অ্যাপ্লিকেশন-ওয়ার্কশিট ফাংশন দ্বারা হয় পদ্ধতি এবং তর্কগুলি একই থাকে।

এক্সেল ভিবিএতে ভ্লুকআপ ফাংশন

এক্সেলের VLOOKUP ফাংশনটি অ্যারেতে একটি মান সন্ধান করতে এবং অন্য কলাম থেকে এর সংশ্লিষ্ট মানটি ব্যবহার করতে ব্যবহৃত হয়। অনুসন্ধানের মানটি প্রথম কলামে উপস্থিত হওয়া উচিত। সঠিক মিল বা আনুমানিক ম্যাচের সন্ধান করা হবে কিনা তাও উল্লেখ করা দরকার। কার্যপত্রক ফাংশন VLOOKUP ভিবিএ কোডিংয়ে ব্যবহার করা যেতে পারে। ফাংশনটি ভিবিএতে নির্মিত হয়নি এবং সুতরাং কেবলমাত্র ওয়ার্কশিটটি ব্যবহার করে কল করতে পারে।

এক্সেলের VLOOKUP ফাংশনে নিম্নলিখিত বাক্য গঠন রয়েছে:

যার মধ্যে, অনুসন্ধান_মূল্যটি সন্ধান করার মান, টেবিল_আরেটি হ'ল সারণী, কল_ইন্ডেক্স_নামটি প্রত্যাবর্তনের মানের কলাম নম্বর, ম্যাচটি সঠিক বা আনুমানিক হলে পরিসীমা_লুপআপ লক্ষণীয়। পরিসর_দর্শন সঠিক / মিথ্যা বা 0/1 হতে পারে।

ভিবিএ কোডে, VLOOKUP ফাংশনটি ব্যবহার করা যেতে পারে:

অ্যাপ্লিকেশন.ওয়ার্কশিটফানশন.ভ্লুআপআপ (লুকোচুরি_ভ্যালু, টেবিল_আরে, কোল_ইন্ডেক্স_নাম, রেঞ্জ_লুকআপ)

এক্সেল ভিবিএতে কীভাবে ভিউলুকআপ ব্যবহার করবেন?

নীচে এক্সেল ভিবিএতে ভ্লুকআপ কোডের কয়েকটি উদাহরণ দেওয়া আছে।

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

এক্সেল ভিবিএ উদাহরণ ভি 1 এর ভিওলুকআপ কোড

আসুন দেখুন আমরা কীভাবে এক্সেল ভিবিএতে কার্যপত্রক ফাংশন VLOOKUP বলতে পারি see

মনে করুন আপনার কাছে শিক্ষার্থীদের আইডি, নাম এবং তাদের প্রাপ্ত গড় নম্বরগুলির একটি ডেটা রয়েছে।

এখন, আপনি 11004 আইডি সহ কোনও শিক্ষার্থীর দ্বারা প্রাপ্ত নম্বরগুলি সন্ধান করতে চান।

মানটি দেখতে, নিম্নলিখিত পদক্ষেপগুলি অনুসরণ করুন:

  • বিকাশকারী ট্যাবে যান এবং ভিজ্যুয়াল বেসিক ক্লিক করুন।

  • ভিবিএ উইন্ডোর নীচে, সন্নিবেশে যান এবং মডিউলটিতে ক্লিক করুন।

  • এখন, ভিবিএ ভিউলুকআপ কোডটি লিখুন। নিম্নলিখিত VBA VLOOKUP কোড ব্যবহার করা যেতে পারে।

সাব ভিউকআপ 1 ()

দিম ছাত্র - লম্বা হিসাবে

ধীর হিসাবে দীর্ঘ হিসাবে চিহ্নিত

ছাত্র_আইডি = 11004

মাইরেঞ্জ = রেঞ্জ সেট করুন ("বি 4: ডি 8")

মার্কস = অ্যাপ্লিকেশন. ওয়ার্কশিট ফাংশন.ভিউলুকআপ (ছাত্র_আইডি, মাইরেঞ্জ, 3, মিথ্যা)

শেষ সাব

প্রথমত, একটি ছাত্র আইডি সংজ্ঞায়িত করুন, যা দেখার মূল্য। অতএব, আমরা সংজ্ঞায়িত করি,

ছাত্র_আইডি = 11004

এরপরে, আমরা পরিসরটি নির্ধারণ করি যেখানে মান এবং ফেরতের মান বিদ্যমান। যেহেতু আমাদের ডেটা B4: D8 কোষে উপস্থিত রয়েছে তাই আমরা একটি পরিসীমা নির্ধারণ করি- মাইআরাইজ হিসাবে:

মাইরেঞ্জ = রেঞ্জ সেট করুন ("বি 4: ডি 8")

পরিশেষে, আমরা ভেরিয়েবলের মধ্যে ওয়ার্কশিট ফাংশনটি ব্যবহার করে VLOOKUP ফাংশনটি ইনপুট করি, হিসাবে চিহ্নিত করে:

মার্কস = অ্যাপ্লিকেশন. ওয়ার্কশিট ফাংশন.ভিউলুকআপ (ছাত্র_আইডি, মাইরেঞ্জ, 3, মিথ্যা)

একটি বার্তা বাক্সে চিহ্নগুলি মুদ্রণ করতে, আসুন নীচের কমান্ডটি ব্যবহার করুন:

এমএসজিবক্স "আইডি সহ শিক্ষার্থী:" এবং ছাত্র_আইডি এবং "প্রাপ্ত" এবং চিহ্ন এবং "চিহ্ন"

এটি ফিরে আসবে:

আইডি সহ শিক্ষার্থী: 11004 85 নম্বর পেয়েছে।

এখন, রান বোতামটি ক্লিক করুন।

আপনি লক্ষ্য করবেন যে এক্সেল শিটটিতে একটি বার্তা বাক্স উপস্থিত হবে।

এক্সেল ভিবিএ উদাহরণ ভিউলুকআপ কোড # 2

ধরুন আপনার কাছে কর্মীদের নাম এবং তাদের বেতনের ডেটা রয়েছে। এই ডেটাতে বি এবং সি কলাম দেওয়া হয়েছে এখন, আপনার একটি ভিবিএ ভিএলইউউকিউপি কোড লিখতে হবে যা কোনও সেল, এফ 4-এ কর্মচারীর নাম দিয়েছে, কর্মচারীর বেতন জি জি ঘরে ফিরে আসবে।

আসুন আমরা VBA VLOOKUP কোড লিখি।

  1. মানগুলি যে ব্যাপ্তিতে উপস্থিত রয়েছে তা নির্ধারণ করুন, যেমন, কলাম বি এবং সি present

মাইরেঞ্জ = রেঞ্জ সেট করুন ("বি: সি")

  1. কর্মচারীর নাম নির্ধারণ করুন এবং সেল F4 থেকে নামটি ইনপুট করুন।

নাম সেট করুন = রেঞ্জ ("F4")

  1. সেল জি 4 হিসাবে বেতন নির্ধারণ করুন।

বেতন নির্ধারণ = ব্যাপ্তি ("জি 4")

  1. এখন, ভিবিএতে ওয়ার্কশিট ফাংশন ব্যবহার করে VLOOKUP ফাংশনটি কল করুন এবং এটি বেতন-ইনপুট করুন V মূল্য। এটি ঘরে জি 4 এর মান (ভেল্কআপ ফাংশনের আউটপুট) ফিরিয়ে দেবে। নিম্নলিখিত সিনট্যাক্স ব্যবহার করা যেতে পারে:

বেতন.ভ্যালু = অ্যাপ্লিকেশন। ওয়ার্কশিটফানশন.ভিউলুকআপ (নাম, মাইরেঞ্জ, 2, মিথ্যা)

  1. এখন, মডিউল চালান। আপনি ভিবিএ ভিএলউইউকিউপি কোড চালানোর পরে সেল জি 4 এ কর্মচারীর বেতন ধারণ করবে।

ধরুন আপনি ওয়ার্কশিটে এফ 4 এর সেলটির মান "ডেভিড" এ পরিবর্তন করে কোডটি আবার চালাচ্ছেন, এটি ডেভিডের বেতন ফিরিয়ে দেবে।

এক্সেল ভিবিএ উদাহরণ ভিউ লুকআপ কোড # 3

ধরুন আপনার কাছে আপনার সংস্থার কর্মচারীর ডেটা রয়েছে, তাদের আইডি, নাম, বিভাগ এবং বেতন রয়েছে। ভিবিএতে ভ্লিকআপ ব্যবহার করে আপনি কোনও কর্মীর নাম এবং বিভাগ ব্যবহার করে বেতনের বিশদ পেতে চান to

যেহেতু এক্সেলে থাকা ভিউলআপ ফাংশনটি কেবলমাত্র একক কলামে লকআপ_মূল্য অনুসন্ধান করে, যা টেবিল_রেয়ের প্রথম কলাম, তাই আপনাকে প্রথমে প্রতিটি কর্মীর "নাম" এবং "বিভাগ" সম্বলিত একটি কলাম তৈরি করা প্রয়োজন।

ভিবিএতে, আসুন কার্যপত্রকের বি কলামে "নাম" এবং "বিভাগ" মান সন্নিবেশ করানো যাক।

এটি করতে, বিকাশকারী ট্যাবে যান এবং ভিজ্যুয়াল বেসিক ক্লিক করুন। তারপরে প্রবেশ করতে যান এবং একটি নতুন মডিউল শুরু করতে মডিউলটিতে ক্লিক করুন।

আসুন এখন কোড লিখি, যেমন কলাম বিতে কলাম ডি (নাম) এবং কলাম E এর মান রয়েছে

সিনট্যাক্সটি নিম্নরূপ দেওয়া হল:

প্রথমত, i = 4 থেকে একটি 'for' লুপ ব্যবহার করুন যেহেতু মানগুলি এই ক্ষেত্রে চতুর্থ সারিতে শুরু হয়। লুপটি কলাম সি এর শেষ সারি শেষ না হওয়া অবধি চলতে থাকবে, সুতরাং, চলক আইটি ‘ফর’ লুপের ভিতরে একটি সারি সংখ্যা হিসাবে ব্যবহার করা যেতে পারে।

তারপরে সেল (সারি_নম্বার, কলাম বি) এর জন্য নির্ধারিত মান লিখুন, যা ঘর (i, "বি") হিসাবে দেওয়া যেতে পারে Cell )।

মনে করুন আপনি B5 = D5 এবং "_" এবং E5 ঘরটি নির্ধারণ করতে চান, আপনি কেবল কোডটি এইভাবে ব্যবহার করতে পারেন:

ঘর (5, "বি")। মান = ঘর (5, "ডি")। মান এবং "_" এবং ঘর (5, "ই")। মান

এখন, অ্যারে B5: E24 এ অনুসন্ধানের সন্ধানটি করা যাক, আপনাকে প্রথমে অনুসন্ধান মানটি প্রবেশ করতে হবে। আসুন আমরা ব্যবহারকারীর কাছ থেকে মান (নাম এবং বিভাগ) নিই। এটা করতে,

  1. স্ট্রিং হিসাবে তিনটি ভেরিয়েবল, নাম, বিভাগ এবং লুকিং_ওয়াল নির্ধারণ করুন।
  2. ব্যবহারকারীর কাছ থেকে নাম ইনপুট নিন। কোডটি ব্যবহার করুন:

নাম = ইনপুটবক্স ("কর্মচারীর নাম লিখুন")

আপনি কোডটি চালানোর সময় ইনপুট বাক্স "এন্টার দিন .." এর সামগ্রীটি প্রম্পট বাক্সে প্রদর্শিত হবে। প্রম্পটে প্রবেশ করা স্ট্রিংটি নাম ভেরিয়েবলের জন্য বরাদ্দ করা হবে।

  1. ব্যবহারকারীর কাছ থেকে বিভাগ নিন। উপরের মত একই কাজ করা যেতে পারে।

বিভাগ = ইনপুটবক্স ("কর্মীর বিভাগে প্রবেশ করুন")

  1. নিম্নলিখিত সিনট্যাক্সটি ব্যবহার করে ভেরিয়েবল লুচিং_ওয়ালে বিভাজক হিসাবে "_" দিয়ে নাম এবং বিভাগটি বরাদ্দ করুন:

সন্ধান_ভালো = নাম & "_" & বিভাগ

  1. B5: E24 পরিসীমাতে look_val সন্ধানের জন্য ভ্লিকআপ সিনট্যাক্সটি লিখুন এটি একটি পরিবর্তনশীল বেতনে ফেরত দিন।

পরিবর্তনশীল বেতন শুরু করুন:

দিম বেতন হিসাবে দীর্ঘ

ভিউলআপ ফাংশনটি লকআপ_ওয়ালার সন্ধান করতে ব্যবহার করুন। টেবিল_রে রেঞ্জ ("বি: এফ") হিসাবে দেওয়া যেতে পারে এবং বেতনটি 5 ম কলামে উপস্থিত রয়েছে। নিম্নলিখিত বাক্য গঠনটি এভাবে ব্যবহার করা যেতে পারে:

বেতন = অ্যাপ্লিকেশন. ওয়ার্কশিট ফাংশন.ভিউলুকআপ (লকআপ_ওয়াল, রেঞ্জ ("বি: এফ"), ৫, মিথ্যা)

  1. বার্তা বাক্সে বেতন মুদ্রণের জন্য সিনট্যাক্সটি ব্যবহার করুন:

এমএসজিবক্স (কর্মচারীর বেতন "এবং বেতন)

এখন, কোড চালান। কার্যপত্রকটিতে একটি প্রম্পট বাক্স উপস্থিত হবে যাতে আপনি নামটি প্রবেশ করতে পারেন। নামটি প্রবেশ করার পরে (বলুন সাশি) এবং ওকে ক্লিক করুন।

এটি অন্য একটি বাক্স খুলবে যেখানে আপনি বিভাগে প্রবেশ করতে পারেন। আপনি বিভাগে প্রবেশের পরে, আইটি বলুন।

এটি কর্মচারীর বেতন মুদ্রণ করবে।

নাম এবং বিভাগের সাথে কোনও কর্মচারীকে যদি ভলাপআপ সন্ধান করতে পারে তবে এটি একটি ত্রুটি দেয়। মনে করুন আপনি "বিষ্ণু" এবং বিভাগ "আইটি" নাম দেন, এটি রান-টাইম ত্রুটি "1004" ফিরিয়ে দেবে।

এই সমস্যাটি সমাধান করার জন্য, আপনি কোডটিতে উল্লেখ করতে পারেন যে এই ধরণের ত্রুটিতে পরিবর্তে "মান খুঁজে পাওয়া যায় না" মুদ্রণ করুন। এটা করতে,

  1. ভিউলআপ সিনট্যাক্স ব্যবহার করার আগে নিম্নলিখিত কোডটি ব্যবহার করুন-

ত্রুটি GoTo বার্তা অন

চেক করুন:

পেছনের কোডটি (চেক :) পর্যবেক্ষণ করা হবে এবং এটি যদি কোনও ত্রুটি পেয়ে থাকে তবে এটি "বার্তা" বিবৃতিতে যাবে

  1. কোডের শেষে (শেষ সাবের আগে) উল্লেখ করুন যে ত্রুটি সংখ্যাটি যদি 1004 হয়, তবে "কর্মচারীর ডেটা উপস্থিত নেই" বার্তা বাক্সে মুদ্রণ করুন। এটি সিনট্যাক্স ব্যবহার করে করা যেতে পারে:

বার্তা:

যদি এরর নাম্বার = 1004 তবে

এমএসজিবক্স ("কর্মচারীর ডেটা উপস্থিত নেই")

শেষ যদি

মডিউল 1:

সাব ভিউকআপ 3 ()

I = 4 টু সেলে (সারি.কাউন্ট, "সি") End শেষ (xlUp) .রো

ঘর (i, "বি")। মান = ঘর (i, "ডি")। মান এবং "_" এবং ঘর (i, "ই")। মান

পরবর্তী আইডিমের নাম হিসাবে স্ট্রিং

দিম বিভাগ হিসাবে স্ট্রিং

স্ট্রিং হিসাবে মন্থর লুকোচুরি_ভাল

লম্বনাম হিসাবে ধীর বেতন = ইনপুটবক্স ("কর্মচারীর নাম লিখুন")

বিভাগ = ইনপুটবক্স ("কর্মচারীর বিভাগে প্রবেশ করুন")

তাকাতে_ভাল = নাম & "_" & বিভাগে ত্রুটি GoTo বার্তা

পরীক্ষা করুন:

বেতন = অ্যাপ্লিকেশন. ওয়ার্কশিট ফাংশন.ভিউলুকআপ (লকআপ_ওয়াল, রেঞ্জ ("বি: এফ"), ৫, মিথ্যা)

এমএসজিবক্স ("কর্মচারীর বেতন" এবং বেতন) বার্তা:

যদি এরর নাম্বার = 1004 তবে

এমএসজিবক্স ("কর্মচারীর ডেটা উপস্থিত নেই")

শেষ যদি শেষ এবং সাব

এক্সেল ভিবিএতে ভ্লুকআপ সম্পর্কে মনে রাখার বিষয়গুলি

  • ওয়ার্কশিট ফাংশনটি ব্যবহার করে ভিসলআপ ফাংশনটি এক্সেল ভিবিএতে কল করা যেতে পারে।
  • এক্সেল ভিবিএতে ভিউলআপ ফাংশনটির বাক্য গঠন একই থাকে।
  • যখন ভিবিএ ভিউলআপ কোডটি অনুসন্ধান_মূল্যটি খুঁজে না পাবে, এটি 1004 ত্রুটি দেবে।
  • ভিউকআপ ফাংশনে ত্রুটিটি কোনও ত্রুটি ফিরিয়ে দিলে একটি গোটো স্টেটমেন্ট ব্যবহার করে পরিচালনা করা যায়।