এক্সেলে ভিবিএ ম্যাক্রো লেখার জন্য একটি শিক্ষানবিস টিউটোরিয়াল (এবং কেন আপনাকে শিখতে হবে)

এক্সেলে ভিবিএ ম্যাক্রো লেখার জন্য একটি শিক্ষানবিস টিউটোরিয়াল (এবং কেন আপনাকে শিখতে হবে)

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





ম্যাক্রো তৈরি করতে VBA ব্যবহার করলে আপনি অনেক বেশি শক্তি পাবেন। আপনি এক্সেলকে বলতে পারেন ঠিক কি করতে হবে এবং কিভাবে করতে হবে। আপনি আরো অনেক ফাংশন এবং ক্ষমতা অ্যাক্সেস পেতে। আপনি যদি নিয়মিত এক্সেল ব্যবহার করেন, তাহলে VBA ম্যাক্রো কিভাবে তৈরি করতে হয় তা শেখা মূল্যবান।





আমরা বুনিয়াদি দিয়ে শুরু করব।





VBA কি?

VBA হল অ্যাপ্লিকেশনের জন্য ভিসুয়াল বেসিক , একটি প্রোগ্রামিং ভাষা যা আপনি অনেক মাইক্রোসফট অ্যাপে ব্যবহার করতে পারেন। ভিজ্যুয়াল বেসিক একটি প্রোগ্রামিং ল্যাঙ্গুয়েজ, এবং ভিবিএ হল এর অ্যাপ্লিকেশন-নির্দিষ্ট সংস্করণ। (২০০ Microsoft সালে মাইক্রোসফট ভিসুয়াল বেসিক বন্ধ করে দেয়, কিন্তু ভিবিএ এখনও শক্তিশালী হচ্ছে)।

সৌভাগ্যবশত নন-প্রোগ্রামারদের জন্য, ভিবিএ খুবই সহজ, এবং আপনি যে ইন্টারফেসটি এডিট করার জন্য ব্যবহার করেন সেটি অনেক সাহায্য প্রদান করে। আপনার স্ক্রিপ্ট দ্রুত কাজ করতে সাহায্য করে আপনি পপ আপ পরামর্শ এবং স্বয়ংক্রিয় সমাপ্তি ব্যবহার করবেন এমন অনেক কমান্ড।



তবুও, VBA অভ্যস্ত হতে একটু সময় নেয়।

এক্সেলে ভিবিএ ম্যাক্রোর সুবিধা

যদি VBA একটি ম্যাক্রো রেকর্ড করার চেয়ে বেশি কঠিন হয়, তাহলে আপনি কেন এটি ব্যবহার করবেন? সংক্ষিপ্ত উত্তর হল যে আপনি ভিবিএ ম্যাক্রো থেকে অনেক বেশি শক্তি পান।





আপনার স্প্রেডশীটের চারপাশে ক্লিক করার এবং সেই ক্লিকগুলি রেকর্ড করার পরিবর্তে, আপনি এক্সেলের সম্পূর্ণ ফাংশন এবং ক্ষমতাগুলি অ্যাক্সেস করতে পারেন। এগুলি কীভাবে ব্যবহার করবেন তা আপনাকে জানতে হবে।

স্ন্যাপচ্যাটে স্ট্রিক কিভাবে পাবেন

এবং একবার আপনি VBA এর সাথে আরও আরামদায়ক হয়ে গেলে, আপনি নিয়মিত ম্যাক্রোতে যা করতে পারেন তা অনেক কম সময়ে করতে পারেন। ফলাফলগুলি আরও অনুমানযোগ্য হবে, যেমন আপনি এক্সেলকে বলছেন ঠিক কি করো. কোনো দ্বিধা নেই।





একবার আপনি আপনার VBA ম্যাক্রো তৈরি করলে, এটি সংরক্ষণ করা এবং ভাগ করা সহজ যাতে অন্য কেউ এর সুবিধা নিতে পারে। এটি বিশেষভাবে দরকারী যখন আপনি অনেক লোকের সাথে কাজ করছেন যাদের এক্সেলে একই জিনিসগুলি করতে হবে।

এটি কীভাবে কাজ করে তা দেখতে একটি সাধারণ VBA ম্যাক্রো দেখুন।

এক্সেলের একটি VBA ম্যাক্রোর উদাহরণ

আসুন একটি সাধারণ ম্যাক্রো দেখি। আমাদের স্প্রেডশীটে কর্মীদের নাম, স্টোর নম্বর যেখানে কর্মচারীরা কাজ করে এবং তাদের ত্রৈমাসিক বিক্রয় রয়েছে।

এই ম্যাক্রো প্রতিটি দোকান থেকে ত্রৈমাসিক বিক্রয় যোগ করবে এবং স্প্রেডশীটের কোষে সেগুলি যোগ করবে আমাদের VBA ওয়াকথ্রু এখানে ):

Sub StoreSales()
Dim Sum1 As Currency
Dim Sum2 As Currency
Dim Sum3 As Currency
Dim Sum4 As Currency
For Each Cell In Range('C2:C51')
Cell.Activate
If IsEmpty(Cell) Then Exit For
If ActiveCell.Offset(0, -1) = 1 Then
Sum1 = Sum1 + Cell.Value
ElseIf ActiveCell.Offset(0, -1) = 2 Then
Sum2 = Sum2 + Cell.Value
ElseIf ActiveCell.Offset(0, -1) = 3 Then
Sum3 = Sum3 + Cell.Value
ElseIf ActiveCell.Offset(0, -1) = 4 Then
Sum4 = Sum4 + Cell.Value
End If
Next Cell

Range('F2').Value = Sum1
Range('F3').Value = Sum2
Range('F4').Value = Sum3
Range('F5').Value = Sum4

End Sub

এটি দীর্ঘ এবং জটিল মনে হতে পারে, তবে আমরা এটি ভেঙে ফেলব যাতে আপনি স্বতন্ত্র উপাদানগুলি দেখতে পারেন এবং ভিবিএর মূল বিষয়গুলি সম্পর্কে কিছুটা শিখতে পারেন।

সাব ঘোষণা করা

মডিউলের শুরুতে আমাদের 'সাব স্টোরসেলস ()' আছে। এটি স্টোরসেলস নামে একটি নতুন সাব সংজ্ঞায়িত করে।

আপনি ফাংশন সংজ্ঞায়িত করতে পারেন --- পার্থক্য হল যে ফাংশনগুলি মান ফিরিয়ে দিতে পারে, এবং সাবস করতে পারে না (যদি আপনি অন্যান্য প্রোগ্রামিং ভাষার সাথে পরিচিত হন, সাবগুলি পদ্ধতির সমতুল্য)। এই ক্ষেত্রে, আমাদের কোন মান ফেরত দেওয়ার দরকার নেই, তাই আমরা একটি সাব ব্যবহার করছি।

মডিউলের শেষে, আমাদের 'এন্ড সাব' আছে, যা এক্সেলকে বলে যে আমরা এই ভিবিএ ম্যাক্রো দিয়ে সম্পন্ন করেছি।

ভেরিয়েবল ঘোষণা করা

আমাদের স্ক্রিপ্টে কোডের প্রথম লাইনগুলি 'ডিম' দিয়ে শুরু হয়। ডিম হল ভেরিয়েবল ঘোষণার জন্য VBA এর কমান্ড।

তাই 'Dim Sum1' 'Sum1' নামে একটি নতুন ভেরিয়েবল তৈরি করে। যাইহোক, আমাদের এক্সেলকে বলতে হবে এটি কোন ধরনের পরিবর্তনশীল। আমাদের একটি ডাটা টাইপ বেছে নিতে হবে। ভিবিএতে বিভিন্ন ধরণের ডেটা রয়েছে --- আপনি এটি খুঁজে পেতে পারেন মাইক্রোসফটের সাহায্য নথিতে সম্পূর্ণ তালিকা

যেহেতু আমাদের VBA ম্যাক্রো মুদ্রার সাথে কাজ করতে যাচ্ছে, আমরা মুদ্রা ডেটা টাইপ ব্যবহার করছি।

বিবৃতি 'Dim Sum1 As Currency' এক্সেলকে Sum1 নামে একটি নতুন কারেন্সি ভেরিয়েবল তৈরি করতে বলে। প্রতিটি ভেরিয়েবল যা আপনি ঘোষণা করেন তার এক্সেলকে তার প্রকার জানাতে একটি 'As' স্টেটমেন্ট থাকতে হবে।

একটি লুপ শুরু করা হচ্ছে

যেকোনো প্রোগ্রামিং ল্যাঙ্গুয়েজে আপনি তৈরি করতে পারেন এমন কিছু শক্তিশালী জিনিস লুপ। যদি আপনি লুপগুলির সাথে পরিচিত না হন, তাহলে Do-While loops এর এই ব্যাখ্যাটি দেখুন। এই উদাহরণে, আমরা একটি লুপ ব্যবহার করছি, যা নিবন্ধেও অন্তর্ভুক্ত।

লুপটি দেখতে কেমন তা এখানে:

For Each Cell in Range('C2:C51')
[a bunch of stuff]
Next Cell

এটি এক্সেলকে আমাদের নির্দিষ্ট পরিসরের কোষগুলির মাধ্যমে পুনরাবৃত্তি করতে বলে। আমরা a ব্যবহার করেছি পরিসীমা বস্তু , যা VBA তে একটি নির্দিষ্ট ধরনের বস্তু। যখন আমরা এইভাবে ব্যবহার করি --- রেঞ্জ ('C2: C51') --- এটি এক্সেলকে বলে যে আমরা সেই 50 টি কোষে আগ্রহী।

'প্রত্যেকের জন্য' এক্সেলকে বলে যে আমরা পরিসরের প্রতিটি কোষের সাথে কিছু করতে যাচ্ছি। 'নেক্সট সেল' আমরা যা করতে চাই তার পরে আসে, এবং এক্সেলকে বলে লুপটি শুরু থেকে শুরু করতে (পরবর্তী সেল দিয়ে শুরু)।

আমাদের এই বিবৃতিও আছে: 'যদি IsEmpty (Cell) তাহলে Exit For।'

আপনি কি এটা অনুমান করতে পারেন?

বিঃদ্রঃ: কঠোরভাবে বলতে গেলে, যদিও লুপ ব্যবহার করা একটি ভাল পছন্দ হতে পারে । যাইহোক, শিক্ষার স্বার্থে, আমি একটি প্রস্থান সহ একটি লুপ ব্যবহার করার সিদ্ধান্ত নিয়েছি।

qled এবং oled মধ্যে পার্থক্য কি?

যদি-তারপর-অন্য বিবৃতি

এই বিশেষ ম্যাক্রোর মূলটি যদি ইফ-তখন-অন্যের বিবৃতিতে থাকে। এখানে আমাদের শর্তাধীন বক্তব্যের ক্রম:

If ActiveCell.Offset(0, -1) = 1 Then
Sum1 = Sum1 + Cell.Value
ElseIf ActiveCell.Offset(0, -1) = 2 Then
Sum2 = Sum2 + Cell.Value
ElseIf ActiveCell.Offset(0, -1) = 3 Then
Sum3 = Sum3 + Cell.Value
ElseIf ActiveCell.Offset(0, -1) = 4 Then
Sum4 = Sum4 + Cell.Value
End If

বেশিরভাগ ক্ষেত্রে, আপনি সম্ভবত অনুমান করতে পারেন যে এই বিবৃতিগুলি কী করে। আপনি ActiveCell.Offset এর সাথে পরিচিত নাও হতে পারেন। 'ActiveCell.Offset (0, -1)' Excel কে সক্রিয় কক্ষের বাম দিকে একটি কলামের দিকে তাকানোর জন্য বলে।

আমাদের ক্ষেত্রে, এটি এক্সেলকে স্টোর নম্বর কলামের সাথে পরামর্শ করতে বলছে। যদি এক্সেল এই কলামে 1 খুঁজে পায়, তাহলে এটি সক্রিয় কোষের বিষয়বস্তু নেয় এবং এটি Sum1 এ যোগ করে। যদি এটি একটি 2 খুঁজে পায়, এটি সক্রিয় কোষের বিষয়বস্তু যোগ করে Sum2। ইত্যাদি।

এক্সেল ক্রমানুসারে এই সমস্ত বিবৃতি দিয়ে যায়। যদি শর্তাধীন বিবৃতি সন্তুষ্ট, এটি তারপর বিবৃতি সম্পন্ন করে। যদি না হয়, এটি পরবর্তী ElseIf এ চলে যায়। যদি এটি শেষ পর্যন্ত সমস্ত পথ পায় এবং শর্তগুলির কোনটিই সন্তুষ্ট না হয়, তবে এটি কোন পদক্ষেপ নেবে না।

লুপ এবং কন্ডিশনের সংমিশ্রণই এই ম্যাক্রোকে চালিত করে। লুপটি এক্সেলকে বাছাইয়ের প্রতিটি কোষের মধ্য দিয়ে যেতে বলে এবং শর্তসাপেক্ষে সেটিকে কী করা উচিত তা বলে।

সেল মান লেখা

অবশেষে, আমরা আমাদের গণনার ফলাফলগুলি কোষে লিখতে পারি। এখানে আমরা যে লাইনগুলি ব্যবহার করি তা হল:

Range('F2').Value = Sum1
Range('F3').Value = Sum2
Range('F4').Value = Sum3
Range('F5').Value = Sum4

'.Value' এবং একটি সমান চিহ্ন দিয়ে, আমরা সেই প্রতিটি কোষকে আমাদের একটি ভেরিয়েবলের মান নির্ধারণ করি।

এবং এটাই! আমরা এক্সেলকে বলি যে আমরা এই সাবটি 'এন্ড সাব' দিয়ে লেখা শেষ করেছি এবং ভিবিএ ম্যাক্রো সম্পূর্ণ হয়েছে।

যখন আমরা ম্যাক্রো চালাই ম্যাক্রো বোতাম বিকাশকারী ট্যাব, আমরা আমাদের যোগফল পেতে:

Excel- এ VBA- এর বিল্ডিং ব্লকগুলিকে একত্রিত করা

যখন আপনি প্রথমে উপরের VBA ম্যাক্রোর দিকে তাকান, এটি বেশ জটিল দেখায়। কিন্তু এটিকে তার উপাদানসমূহে বিভক্ত করার পর যুক্তিটি স্পষ্ট হয়ে যায়। যেকোনো স্ক্রিপ্টিং ভাষার মতো, ভিবিএ সিনট্যাক্সে অভ্যস্ত হতে সময় লাগে।

কিন্তু অনুশীলনের সাথে, আপনি আপনার VBA শব্দভাণ্ডার তৈরি করবেন এবং ম্যাক্রোগুলি দ্রুত, আরো নির্ভুলভাবে লিখতে সক্ষম হবেন এবং আপনি তাদের রেকর্ড করতে পারবেন তার চেয়ে অনেক বেশি শক্তি দিয়ে।

যখন আপনি আটকে যান, একটি Google অনুসন্ধান চালানো আপনার VBA প্রশ্নের উত্তর পাওয়ার একটি দ্রুত উপায়। এবং মাইক্রোসফটের এক্সেল ভিবিএ রেফারেন্স যদি আপনি একটি প্রযুক্তিগত উত্তরের জন্য এটি খনন করতে ইচ্ছুক হন তাহলে সহায়ক হতে পারে।

একবার আপনি মৌলিক বিষয়ে আরামদায়ক হয়ে গেলে, আপনি এর মতো জিনিসগুলির জন্য VBA ব্যবহার শুরু করতে পারেন এক্সেল থেকে ইমেল পাঠানো , আউটলুক টাস্ক এক্সপোর্ট করা, এবং আপনার পিসির তথ্য প্রদর্শন করা।

আপনি কি গেমকিউব গেম খেলতে পারবেন?
শেয়ার করুন শেয়ার করুন টুইট ইমেইল এফবিআই কেন মধু রans্যানসমওয়্যারের জন্য সতর্কতা জারি করেছে

এফবিআই বিশেষ করে র‍্যানসমওয়্যারের কদর্য স্ট্রেন সম্পর্কে সতর্কতা জারি করেছে। এখানে আপনাকে বিশেষ করে Hive ransomware সম্পর্কে সতর্ক থাকতে হবে।

পরবর্তী পড়ুন
সম্পর্কিত বিষয়
  • প্রমোদ
  • স্প্রেডশীট
  • মাইক্রোসফট এক্সেল
  • মাইক্রোসফট অফিস 2016
  • ম্যাক্রো
  • কোডিং টিউটোরিয়াল
লেখক সম্পর্কে তারপর আলব্রাইট(506 নিবন্ধ প্রকাশিত)

ড্যান একটি বিষয়বস্তু কৌশল এবং বিপণন পরামর্শক যিনি কোম্পানিকে চাহিদা এবং নেতৃত্ব তৈরি করতে সহায়তা করেন। তিনি কৌশল এবং বিষয়বস্তু বিপণন সম্পর্কে ব্লগ করেন dannalbright.com এ।

ড্যান আলব্রাইট থেকে আরো

আমাদের নিউজলেটার সদস্যতা

প্রযুক্তি টিপস, রিভিউ, ফ্রি ইবুক এবং এক্সক্লুসিভ ডিলের জন্য আমাদের নিউজলেটারে যোগ দিন!

সাবস্ক্রাইব করতে এখানে ক্লিক করুন