সহজ গণনার জন্য কখনও কখনও সারি সংখ্যা অনুযায়ী এক্সেল শিটকে একাধিক শিটে ভাগ করার প্রয়োজন হয়। এই আর্টিকেলে আমরা Microsoft Excel VBA কোড ব্যবহার করে একটি সুন্দর উদাহরণ ও ব্যাখ্যা দিয়ে তা কিভাবে করবেন তা শিখব।
প্র্যাকটিস ওয়ার্কবুক
নিচের ওয়ার্কবুকটি ডাউনলোড করে এক্সারসাইজ করুন।
সারি অনুযায়ী এক্সেল শিটকে একাধিক শিটে ভাগ করার Excel VBA
VBA (Visual Basic for Application) মাইক্রোসফট এক্সেলের জন্য সবচেয়ে জনপ্রিয় প্রোগ্রামিং ভাষাগুলোর একটি। ইউজার-ডিফাইন্ড ফাংশন ডেভেলপ করার জন্য আমরা এক্সেল VBA ব্যবহার করতে পারি। এটি শেখা এবং প্রয়োগ করা খুব সহজ।
ভাগ করার শিটটির পরিচয় যা একাধিক শিটে ভাগ হবে
ধরি আমাদের একটি ডেটাসেট (B4:C10) আছে কর্মচারীদের ওয়ার্কিং আওয়ারসহ Sheet1-এ। আমরা এই শিটকে একাধিক শিটে ভাগ করব। প্রতিটি শিটে দুটি সারি থাকবে।
ধাপ ১: এক্সেল শিটকে একাধিক শিটে ভাগ করার জন্য VBA উইন্ডো চালু করা
- প্রথমে শিটবার থেকে ওয়ার্কশিটটি সিলেক্ট করুন।
- এরপর শিটে right-click করুন।
- View Code-এ ক্লিক করুন।
ধাপ ২: VBA কোড টাইপ ও রান করা
- একটি VBA Module উইন্ডো খুলবে। এটি কীবোর্ড শর্টকাট 'Alt + F11' দিয়েও খোলা যায়।
- এখন নিচের কোডটি টাইপ করুন:
Sub SplitSheet()
Dim Rng As Range
Dim xRow As Range
Dim SplitRow As Integer
Dim xSheet As Worksheet
On Error Resume Next
xTitleId = "ExcelSplit"
Set Rng = Application.Selection
Set Rng = Application.InputBox("Range", xTitleId, Rng.Address, Type:=8)
SplitRow = Application.InputBox("Row Number Split", xTitleId, 5, Type:=1)
Set xSheet = Rng.Parent
Set xRow = Rng.Rows(1)
Application.ScreenUpdating = False
For i = 1 To Rng.Rows.Count Step SplitRow
resizeCount = SplitRow
If (Rng.Rows.Count - xRow.Row + 1) < SplitRow Then
resizeCount = Rng.Rows.Count - xRow.Row + 1
End If
xRow.Resize(resizeCount).Copy
Application.Worksheets.Add after:=Application.Worksheets(Application.Worksheets.Count)
Application.ActiveSheet.Range("A1").PasteSpecial
Set xRow = xRow.Offset(SplitRow)
Next
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
- তারপর Run অপশনে ক্লিক করুন অথবা সরাসরি F5 কী চাপুন কোড রান করতে।
ধাপ ৩: সারি অনুযায়ী শিট ভাগ করার জন্য ম্যাক্রো নাম দিয়ে রান করা
- একটি কনফারমেশন Macros উইন্ডো পপ আপ হবে।
- এরপর শিটের নাম সিলেক্ট করে Run-এ ক্লিক করুন।
ধাপ ৪: ডেটা রেঞ্জ সিলেক্ট করা
- ExcelSplit Range ডায়লগ বক্সে ডেটার রেঞ্জ নির্দিষ্ট করুন এবং OK চাপুন।
ধাপ ৫: প্রতিটি শিটে দেখানো সারি সংখ্যা নির্দিষ্ট করা
- আবার ExcelSplit Row Number Split ডায়লগ বক্সে ভাগ করার সারি সংখ্যা লিখুন এবং OK চাপুন। এখানে আমরা ' 2 ' লিখেছি।
সারি অনুযায়ী একাধিক এক্সেল শিটের চূড়ান্ত আউটপুট
- শেষে আমরা দেখতে পাচ্ছি যে মেইন শিট একাধিক শিটে ভাগ হয়েছে। প্রতিটি শিটে দুটি সারি রয়েছে।
আরও পড়ুন: কলাম ভ্যালুর ভিত্তিতে এক্সেল শিটকে একাধিক শিটে ভাগ করার পদ্ধতি
উপসংহার
এই Microsoft Excel VBA কোড ব্যবহার করে আমরা সারি সংখ্যা অনুযায়ী এক্সেল শিটকে একাধিক শিটে ভাগ করতে পারি। একটি প্র্যাকটিস ওয়ার্কবুক সংযোজিত। এগিয়ে যান এবং চেষ্টা করুন। যেকোনো প্রশ্ন জিজ্ঞেস করুন বা নতুন পদ্ধতি সুাধান দিন।
সম্পর্কিত পঠন
- এক্সেলে স্প্লিট স্ক্রিন করার ৩ উপায়
- এক্সেলে শিট আলাদা করার ৬টি কার্যকর উপায়
- এক্সেল শিটকে একাধিক ফাইলে ভাগ করার ৩টি দ্রুত পদ্ধতি
- এক্সেলে শিটগুলোকে আলাদা ওয়ার্কবুকে ভাগ করা (৪ পদ্ধতি)
- VBA কোড ব্যবহার করে ওয়ার্কবুককে আলাদা এক্সেল ফাইলে ভাগ করার পদ্ধতি