এই নিবন্ধে, আমি আপনাকে দেখাব কিভাবে আপনি VBA ব্যবহার করতে পারেন এক্সেলে একটি পরিবর্তনশীল সারি নম্বর সহ পরিসর। আপনি VBA এর সাথে কাজ করতে শিখবেন কক্ষের একটি পরিসর নির্বাচন করার জন্য পরিসর, কক্ষের একটি পরিসরে সংখ্যা সন্নিবেশ করান, কক্ষের পরিসরে গাণিতিক ক্রিয়াকলাপ সম্পাদন করুন এবং একটি পরিবর্তনশীল সারি সংখ্যা সহ ঘরের একটি পরিসরকে রঙ করুন।
এক্সেলে পরিবর্তনশীল সারি নম্বর সহ একটি পরিসর সেট করতে VBA কোড (দ্রুত ভিউ)
Sub Range_with_Variable_Row_Number()
First_Cell = InputBox("Enter the First Cell of the Range: ")
Row_Number = Str(Range(First_Cell).Row)
Number_of_Rows = InputBox("Enter the Total Number of Rows of the Range: ")
Set Rng = Range(First_Cell & ":" & Mid(First_Cell, 1, Len(First_Cell) - Len(Row_Number) + 1) & Mid(Str(Int(Number_of_Rows) + Int(Row_Number) - 1), 2, 10))
End Sub
⧭ কোডের ব্যাখ্যা:
- কোডটি দুটি ইনপুট নেয়, পরিসরের প্রথম ঘর, যাকে বলা হয় প্রথম_সেল , এবং পরিসরের পরিবর্তনশীল সারির মোট সংখ্যা, যাকে বলা হয় Number_of_Rows .
- তারপর এটি Rng নামে একটি সারি তৈরি করে , প্রথম_সেল থেকে শুরু আপনি চান মোট সারি সংখ্যা পর্যন্ত।
- উদাহরণস্বরূপ, যদি আপনার প্রথম_সেল হল B4 এবং সারির_সংখ্যা হল 10৷ , তারপর আউটপুট Rng হল B4:B13 .
- সর্বদা রিলেটিভ সেল রেফারেন্স ব্যবহার করুন প্রথম_সেলের , পরম নয় অথবা মিশ্র কক্ষ রেফারেন্স (B4 ব্যবহার করুন , $B$4 নয় অথবা $B4 )।
এক্সেলে পরিবর্তনশীল সারি নম্বর সহ VBA পরিসর ব্যবহার করার 4 উদাহরণ (দ্রুত দৃশ্য)
এখানে আমরা নামগুলি সহ একটি ডেটা সেট পেয়েছি এবং বেতন জুপিটার গ্রুপ নামে একটি কোম্পানির কিছু কর্মচারী।
আজ আমরা VBA ব্যবহার করে একটি পরিবর্তনশীল সারি নম্বর সহ একটি পরিসর নিয়ে কাজ করার চেষ্টা করব এই ডেটা সেটে৷
৷1. এক্সেলতে VBA সহ পরিবর্তনশীল সারি নম্বর সহ একটি পরিসর নির্বাচন করুন
প্রথমত, আসুন একটি ম্যাক্রো বিকাশ করি VBA ব্যবহার করে একটি পরিবর্তনশীল সারি নম্বর সহ একটি পরিসর নির্বাচন করতে .
আসুন ১ম 5-এর নাম নির্বাচন করি কর্মচারী।
আপনি নিম্নলিখিত VBA কোড ব্যবহার করতে পারেন৷ এই উদ্দেশ্যে:
⧭ VBA কোড:
Sub Select_Range()
First_Cell = InputBox("Enter the First Cell to Select: ")
Row_Number = Str(Range(First_Cell).Row)
Number_of_Rows = InputBox("Enter the Number of Rows to Select: ")
Rng = First_Cell & ":" & Mid(First_Cell, 1, Len(First_Cell) - Len(Row_Number) + 1) & Mid(Str(Int(Number_of_Rows) + Int(Row_Number) - 1), 2, 10)
Range(Rng).Select
End Sub
⧭ আউটপুট:
ম্যাক্রো চালান (নির্বাচন_পরিসীমা ) আপনি দুটি ইনপুট বাক্স পাবেন৷
৷1ম বক্স আপনাকে আপনি যে পরিসরটি নির্বাচন করতে চান তার 1ম ঘরে প্রবেশ করতে বলবে। এখানে এটি B4 , ১ম কর্মচারীর সাথে সেল।
ঠিক আছে ক্লিক করুন . 2য় ইনপুট বক্স আপনাকে জিজ্ঞাসা করবে যে আপনি কতগুলি সারি নির্বাচন করতে চান। এখানে এটি 5 .
আবার ঠিক আছে ক্লিক করুন . এবং আপনি প্রথম 5 এর নাম পাবেন আপনার ডেটা সেটে নির্বাচিত কর্মীরা৷
৷
আরো পড়ুন: এক্সেল VBA (9 উদাহরণ) দিয়ে রেঞ্জ থেকে সারি নম্বর কীভাবে পাবেন
2. এক্সেলতে পরিবর্তনশীল সারি নম্বর সহ একটি পরিসরে সংখ্যা সন্নিবেশ করান
আপনি VBA এর সাথে একটি পরিবর্তনশীল সারি নম্বর সহ একটি পরিসরে নম্বর সন্নিবেশ করতে পারেন এক্সেলে।
আপনি একটি নির্দিষ্ট সংখ্যা এবং সংখ্যার একটি সিরিজ উভয়ই সন্নিবেশ করতে পারেন৷
1ম 5 নম্বর দেওয়া যাক 1 থেকে 5 পর্যন্ত কর্মচারী .
অর্থাৎ, 1 থেকে 5 এর একটি সিরিজ সন্নিবেশ করুন 1ম 5 এর নামের জন্য বাম কর্মচারী (A4:A8 )।
আপনি নিম্নলিখিত VBA কোড ব্যবহার করতে পারেন৷ এই উদ্দেশ্যে:
⧭ VBA কোড:
Sub Insert_Numbers()
First_Cell = InputBox("Enter the First Cell to Insert Number: ")
Row_Number = Str(Range(First_Cell).Row)
Number_of_Rows = InputBox("Enter the Total Number of Rows to Insert Numbers: ")
Set Rng = Range(First_Cell & ":" & Mid(First_Cell, 1, Len(First_Cell) - Len(Row_Number) + 1) & Mid(Str(Int(Number_of_Rows) + Int(Row_Number) - 1), 2, 10))
Series_or_Fixed = Int(InputBox("Enter 1 to Enter a Series of Numbers: " + vbNewLine + vbNewLine + "OR" + vbNewLine + vbNewLine + "Enter 2 to Enter a Fixed Number: "))
If Series_or_Fixed = 1 Then
First_Number = Int(InputBox("Enter the First Number: "))
Increment = Int(InputBox("Enter the Increment: "))
For i = 1 To Rng.Rows.Count
Rng.Cells(i, 1) = First_Number + (i - 1) * Increment
Next i
ElseIf Series_or_Fixed = 2 Then
Number = Int(InputBox("Enter the Fixed Number: "))
For i = 1 To Rng.Rows.Count
Rng.Cells(i, 1) = Number
Next i
End If
End Sub
⧭ আউটপুট:
এই ম্যাক্রো চালান (সংখ্যা সন্নিবেশ করুন ) আপনি কয়েকটি ইনপুট বাক্স পাবেন।
1ম বক্স আপনাকে নম্বরগুলি সন্নিবেশ করার জন্য প্রথম ঘরে প্রবেশ করতে বলবে। এখানে এটি A4 .
ঠিক আছে ক্লিক করুন . ২য় নম্বর সন্নিবেশ করার জন্য বক্স আপনাকে মোট সারির সংখ্যা লিখতে বলবে।
এখানে এটি 5 .
3য় বক্স আপনাকে জিজ্ঞাসা করবে আপনি সংখ্যার সিরিজ চান নাকি একটি নির্দিষ্ট সংখ্যা চান।
1 লিখুন সংখ্যার একটি সিরিজের জন্য।
2 লিখুন একটি নির্দিষ্ট সংখ্যার জন্য।
এখানে আমি সংখ্যার একটি সিরিজ চাই. তাই আমি 1 এ প্রবেশ করেছি .
৪র্থ বক্স আপনাকে সিরিজের প্রথম নম্বর জিজ্ঞাসা করবে। আমি 1 থেকে 5 এর একটি সিরিজ চাই . তাই, আমি 1 এ প্রবেশ করেছি .
চূড়ান্ত বাক্স আপনাকে ইনক্রিমেন্ট প্রবেশ করতে বলবে। 1, 2, 3, 4, 5, এর একটি সিরিজে এটি 1 .
ঠিক আছে ক্লিক করুন . এবং আপনি 1 থেকে 5 এর একটি সিরিজ পাবেন A4:A8 পরিসরে .
আরো পড়ুন: এক্সেলে পরিবর্তনশীল সারি নম্বর সহ পরিসর কীভাবে ব্যবহার করবেন
একই রকম পড়া
- VBA এক্সেলে কলাম নম্বরের উপর ভিত্তি করে পরিসর ব্যবহার করবে (৪টি পদ্ধতি)
- কীভাবে সেল ভ্যালু ভিবিএ (7 উপায়) এর উপর ভিত্তি করে পরিসর নির্বাচন করবেন
- Excel এ VBA এর রেঞ্জ অবজেক্ট ব্যবহার করুন (5টি বৈশিষ্ট্য)
- VBA এক্সেলে রেঞ্জ সেট করতে (৭টি উদাহরণ)
- এক্সেল (4 ম্যাক্রো) এ VBA ব্যবহার করে কীভাবে সারি নম্বর খুঁজে পাবেন
3. এক্সেলতে পরিবর্তনশীল সারি নম্বর সহ একটি পরিসরে গাণিতিক অপারেশন সম্পাদন করুন
এরপর, আমরা একটি ম্যাক্রো তৈরি করব একটি পরিবর্তনশীল সারি সংখ্যা সহ একটি পরিসরে একটি গাণিতিক অপারেশন সম্পাদন করতে।
উদাহরণস্বরূপ, আসুন এক মুহুর্তের জন্য চিন্তা করি যে জুপিটার গ্রুপের প্রধান প্রথম 5 জন কর্মচারীর বেতন $10,000 বাড়াতে চান .
আমরা একটি ম্যাক্রো তৈরি করব তার উদ্দেশ্য সাধনের জন্য।
আপনি নিম্নলিখিত VBA কোড ব্যবহার করতে পারেন৷ :
⧭ VBA কোড:
Sub Mathematical_Operation()
First_Cell = InputBox("Enter the First Cell to Perform Operation: ")
Row_Number = Str(Range(First_Cell).Row)
Number_of_Rows = InputBox("Enter the Total Number of Rows to Perform Operation: ")
Set Rng = Range(First_Cell & ":" & Mid(First_Cell, 1, Len(First_Cell) - Len(Row_Number) + 1) & Mid(Str(Int(Number_of_Rows) + Int(Row_Number) - 1), 2, 10))
Operation = Int(InputBox("Enter the Operation to Perform: " + vbNewLine + "Enter 1 for Addition: " + vbNewLine + "Enter 2 for Subtraction: " + vbNewLine + "Enter 3 for Multiplication: " + vbNewLine + "Enter 4 for Division: "))
Operations = Array("Add", "Subtract", "Multiply", "Divide")
Number = Int(InputBox("Enter the Number to " + Operations(Operation - 1) + ": "))
For i = 1 To Rng.Rows.Count
If Operation = 1 Then
Rng.Cells(i, 1) = Rng.Cells(i, 1).Value + Number
End If
If Operation = 2 Then
Rng.Cells(i, 1) = Rng.Cells(i, 1).Value - Number
End If
If Operation = 3 Then
Rng.Cells(i, 1) = Rng.Cells(i, 1).Value * Number
End If
If Operation = 4 Then
Rng.Cells(i, 1) = Rng.Cells(i, 1).Value / Number
End If
Next i
End Sub
⧭ আউটপুট:
ম্যাক্রো চালান (গাণিতিক_অপারেশন ) আপনি 4 পাবেন ইনপুট বক্স।
1ম বক্স, যথারীতি, আপনাকে অপারেশন করার জন্য প্রথম ঘরে প্রবেশ করতে বলবে।
এই উদাহরণে, এটি হল 1ম কর্মচারীর বেতন, সেল C4 .
২য় বাক্স অপারেশন করার জন্য আপনাকে মোট সারির সংখ্যা জিজ্ঞাসা করবে।
3য় বক্স আপনাকে আপনি যে অপারেশনটি করতে চান সেটি লিখতে বলবে।
1 লিখুন যোগ করার জন্য।
2 লিখুন বিয়োগের জন্য।
3 গুণের জন্য।
এবং 4 একটি বিভাগের জন্য।
এখানে আমি একটি সংযোজন চাই। তাই আমি 1 এ প্রবেশ করেছি .
অবশেষে, ৪র্থ বক্স যোগ করার জন্য নম্বর লিখতে বলবে। এখানে আমি 10000 প্রবেশ করেছি .
ঠিক আছে ক্লিক করুন . এবং আপনি দেখতে পাবেন প্রথম 5 জন কর্মচারীর বেতন $10,000 বেড়েছে .
আরো পড়ুন: কলামে স্ট্রিং খুঁজুন এবং এক্সেলে সারি নম্বর রিটার্ন করুন (7 উপায়)
4. এক্সেলতে পরিবর্তনশীল সারি নম্বর সহ একটি পরিসরের রঙের কক্ষ
অবশেষে, আমরা একটি ম্যাক্রো তৈরি করব এক্সেলের একটি পরিবর্তনশীল সারি নম্বর সহ একটি পরিসরের ঘরগুলিকে রঙ করতে।
আসুন প্রথম পাঁচজন কর্মচারীর নাম লাল করি।
আপনি নিম্নলিখিত VBA কোড ব্যবহার করতে পারেন৷ :
⧭ VBA কোড:
Sub Color_Range()
First_Cell = InputBox("Enter the First Cell to Color: ")
Row_Number = Str(Range(First_Cell).Row)
Number_of_Rows = InputBox("Enter the Total Number of Rows to Color: ")
Set Rng = Range(First_Cell & ":" & Mid(First_Cell, 1, Len(First_Cell) - Len(Row_Number) + 1) & Mid(Str(Int(Number_of_Rows) + Int(Row_Number) - 1), 2, 10))
Color_Code = Int(InputBox("Enter the Color Code: " + vbNewLine + "Enter 3 for Color Red." + vbNewLine + "Enter 5 for Color Blue." + vbNewLine + "Enter 6 for Color Yellow." + vbNewLine + "Enter 10 for Color Green."))
Background_or_Text = Int(InputBox("Enter 1 to Color the Whole Background of the Cells: " + vbNewLine + vbNewLine + "Or" + vbNewLine + vbNewLine + "Enter 2 to Color Only the Texts: "))
For i = 1 To Rng.Rows.Count
If Background_or_Text = 1 Then
Rng(i, 1).Interior.ColorIndex = Color_Code
ElseIf Background_or_Text = 2 Then
Rng.Cells(i, 1).Characters(1, Len(Rng.Cells(i, 1))).Font.ColorIndex = Color_Code
End If
Next i
End Sub
⧭ আউটপুট:
ম্যাক্রো চালান (রঙের_পরিসীমা ) আপনি 4টি ইনপুট বাক্স পাবেন৷
৷1ম বক্স আপনাকে রঙ করার জন্য প্রথম ঘরে প্রবেশ করতে বলবে।
এখানে প্রথম কর্মচারী, সেল B4।
২য় বক্স রঙ করার জন্য মোট সারির সংখ্যা জিজ্ঞাসা করবে। এখানে এটি 5 .
3য় বক্স আপনাকে রঙ চয়ন করতে বলবে। Microsoft কালার কোড অনুযায়ী যেকোনো রঙের সূচক লিখুন .
এখানে আমি 6 প্রবেশ করেছি (হলুদ এর জন্য রঙ)।
চূড়ান্ত বাক্সটি জিজ্ঞাসা করবে যে আপনি কক্ষের পুরো পটভূমিতে রঙ করতে চান নাকি শুধুমাত্র পাঠ্য।
আমি 1 এ প্রবেশ করেছি (পুরো পটভূমি)।
ঠিক আছে ক্লিক করুন . এবং আপনি হলুদ রঙে হাইলাইট করা ১ম 5টি নামের পুরো ব্যাকগ্রাউন্ড পাবেন।
আরো পড়ুন: এক্সেলে বর্তমান সেলের সারি নম্বর কীভাবে পাবেন (4টি দ্রুত উপায়)
উপসংহার
এই পদ্ধতিগুলি ব্যবহার করে, আপনি VBA ব্যবহার করতে পারেন৷ এক্সেলে একটি পরিবর্তনশীল সারি নম্বর সহ পরিসর। আপনি কি কিছু জানতে চান? নির্দ্বিধায় আমাদের জিজ্ঞাসা করুন৷
সম্পর্কিত প্রবন্ধ
- ভিবিএ রেঞ্জ অফসেট কীভাবে ব্যবহার করবেন (11 উপায়)
- এক্সেলের পরিসরে প্রতিটি কক্ষের জন্য VBA (3 পদ্ধতি)
- এক্সেল VBA (আলটিমেট গাইড) সহ প্রতিটি সেলের জন্য একটি পরিসর লুপ করুন
- এক্সেল VBA রেঞ্জ অন্য শীটে কপি করুন (8টি সহজ উপায়)
- এক্সেল ভিবিএ:কলামে স্ট্রিং খুঁজুন এবং সারি নম্বর রিটার্ন করুন
- এক্সেল সূত্রে কীভাবে সারি সংখ্যা বৃদ্ধি করবেন (6টি সহজ উপায়)