যখন আপনি ডেটাবেস বা অন্য কোনো সোর্স থেকে ডেটা ইম্পোর্ট করেন, তখন প্রায়শই একটি সেলকে ভাগ করতে হয় দুই বা অধিক অংশে।
এই টিউটোরিয়ালে আমি বাস্তব উদাহরণসহ এক্সেলে একটি সেলকে দুটি কলামে ভাগ করার কার্যকর পদ্ধতিগুলো আলোচনা করব।
এক্সেলে একটি সেলকে দুটি কলামে ভাগ করার পদ্ধতি
এখানে একটি ডেটাসেট আছে যেখানে কলাম B-এ মূলত পূর্ণ নাম রয়েছে। এখন কলাম B-এর সেলকে দুটি কলামে ভাগ করতে হবে যেমন প্রথম নাম এবং শেষ নাম। নিচের পদ্ধতিগুলো ব্যবহার করে এটি করা যাবে।

১. টেক্সট টু কলামস ব্যবহার করে সেল ভাগ করুন
ডেটাসেটে আমার প্রিয় ইংরেজি সাহিত্যিকের নাম আছে। এখন টেক্সট টু কলামস ব্যবহার করে নামকে প্রথম নাম এবং শেষ নামে ভাগ করব।
টেক্সট টু কলামস এক্সেলের একটি সুবিধাজনক ফিচার যা একটি ডিলিমিটার ব্যবহার করে একটি সেল/কলামের টেক্সটকে অনেক কলামে পার্স করে।
এক ডিলিমিটার হলো একটি ক্যারেক্টার যেমন কমা, স্পেস, সেমিকোলন ইত্যাদি যা টেক্সট স্ট্রিং বা অন্যান্য ডেটা স্ট্রিমকে আলাদা করে।
আমাদের ডেটাসেটে স্পেস হলো ডিলিমিটার।
নিচের ধাপগুলো অনুসরণ করুন:
ধাপসমূহ:
- পুরো ডেটা সিলেক্ট করুন যেমন B4:B11
- ডেটা ট্যাব থেকে টেক্সট টু কলামস অপশন বেছে নিন
- ডিলিমিটেড অপশন বেছে নিন
- নেক্সট প্রেস করুন

- এখন স্পেস অপশন বেছে নিন
- নেক্সট প্রেস করুন

- কলাম ডেটা ফরম্যাট থেকে টেক্সট অপশন বেছে নিন
- প্রয়োজনীয় হলে ডেস্টিনেশন ঠিক করুন এবং ফিনিশ প্রেস করুন

ফলাফল নিচের মতো হবে:

আরও পড়ুন: এক্সেলে সেল ভাগ করার ৫টি সহজ ট্রিক
২. ফ্ল্যাশ ফিল ব্যবহার করে সেল ভাগ করুন
ফ্ল্যাশ ফিল এক্সেলের একটি স্পেশাল টুল যা ডেটায় প্যাটার্ন শনাক্ত হলে স্বয়ংক্রিয়ভাবে ভ্যালু পূরণ করে। এটি মাইক্রোসফট এক্সেল ২০১৩ ভার্সন থেকে উপলব্ধ।
এটি মেশিন লার্নিং কৌশলের একটি যেখানে ডেটা প্যাটার্ন ইভ্যালুয়েট করা হয়, প্যাটার্ন শিখা হয় এবং সেটি ব্যবহার করে সেল পূরণ করা হয়।
ডেটাসেটের নামকে প্রথম এবং শেষ নামে ভাগ করতে এই টুলটি ব্যবহার করা যায়।
ধাপসমূহ:
- একটি খালি সেল সিলেক্ট করুন যেমন C5
- B5 সেলের প্রথম নাম উইলিয়াম নির্বাচিত C5 সেলে টাইপ করুন
- সেলের নিচের ডান কোণে ডাবল ক্লিক করুন। পুরো সেল রেঞ্জ স্বয়ংক্রিয়ভাবে পূরণ হয়ে যাবে। এখানে অনেক বিকল্প আছে যেমন কーソর টেনে শেষ সেল পর্যন্ত আনা বা ডেটা > ডেটা টুলস > ফ্ল্যাশ ফিল থেকে সরাসরি ফ্ল্যাশ ফিল অপশন বেছে নেওয়া।

- এখন ফ্ল্যাশ ফিল অপশন বেছে নিন।

টুলটি স্বয়ংক্রিয়ভাবে পুরো সেল রেঞ্জে প্রথম নাম পূরণ করে দেবে:

এভাবেই শেষ নামের জন্য এই ফিচারটি ব্যবহার করুন। সেক্ষেত্রে B5 সেলের শেষ নাম D5 সেলে টাইপ করুন। এরপর আগের প্রক্রিয়া অনুসরণ করুন। আউটপুট নিচের মতো হবে:

আরও পড়ুন: VBA দিয়ে স্ট্রিংকে একাধিক কলামে ভাগ করা (২ পদ্ধতি)
৩. ফর্মুলা ব্যবহার করে সেল ভাগ করুন
i. ডিলিমিটার দিয়ে সেল ভাগ করুন
ডিলিমিটার ব্যবহার করে এক্সেল ফাংশনগুলো দিয়ে নামকে প্রথম এবং শেষ নামে ভাগ করা যায়। আমাদের ডেটাসেটে স্পেস ডিলিমিটার যা নামের মাঝপথে আছে।
এখানে ব্যবহৃত ফাংশনগুলো ধারণা নিন:
LEFT ফাংশন স্ট্রিংয়ের বাম পাশ থেকে টেক্সট এক্সট্র্যাক্ট করে। সিনট্যাক্স:
=LEFT (text, [num_chars])
আর্গুমেন্টগুলো:
text – যে টেক্সট থেকে ক্যারেক্টার এক্সট্র্যাক্ট করা হবে।
num_chars – [ঐচ্ছিক] বাম পাশ থেকে কতগুলো ক্যারেক্টার এক্সট্র্যাক্ট করা হবে।
RIGHT ফাংশন সরাসরি টেক্সট স্ট্রিংয়ের ডান পাশ থেকে নির্দিষ্ট সংখ্যক ক্যারেক্টার এক্সট্র্যাক্ট করে। সিনট্যাক্স:
=RIGHT (text, [num_chars])
আর্গুমেন্টগুলো:
text – যে টেক্সট থেকে ডান পাশের ক্যারেক্টার এক্সট্র্যাক্ট করা হবে।
num_chars – [ঐচ্ছিক] ডান পাশ থেকে এক্সট্র্যাক্ট করার ক্যারেক্টার সংখ্যা।
এক্সেল SEARCH ফাংশন একটি টেক্সট স্ট্রিংয়ের ভেতর অন্য একটি টেক্সট স্ট্রিংয়ের অবস্থান রিটার্ন করে। সিনট্যাক্স:
=SEARCH (find_text, within_text, [start_num])
আর্গুমেন্টগুলো:
find_text – খুঁজতে হবে এমন টেক্সট।
within_text – যে টেক্সটে খুঁজা হবে।
start_num – [ঐচ্ছিক] টেক্সটে খুঁজা শুরু করার পজিশন।
FIND ফাংশন একটি টেক্সট স্ট্রিংয়ের ভেতর অন্য একটি টেক্সট স্ট্রিংয়ের পজিশন (নাম্বার হিসেবে) রিটার্ন করে। সিনট্যাক্স:
=FIND (find_text, within_text, [start_num])
আর্গুমেন্টগুলো SEARCH-এর মতোই।
LEN ফাংশন ব্যবহার করে টেক্সটের দৈর্ঘ্য জানা যায়। সিনট্যাক্স:
=LEN (text)
আর্গুমেন্ট:
text – যে টেক্সটের দৈর্ঘ্য হিসাব করতে হবে।
SUBSTITUTE ফাংশন একটি স্ট্রিংয়ের টেক্সট রিপ্লেস করে। সিনট্যাক্স:
=SUBSTITUTE (text, old_text, new_text, [instance])
আর্গুমেন্টগুলো:
text – পরিবর্তন করার টেক্সট।
old_text – রিপ্লেস করা হবে এমন টেক্সট।
new_text – যেটি দিয়ে রিপ্লেস করা হবে।
instance – [ঐচ্ছিক] কোন ইনস্ট্যান্স রিপ্লেস করা হবে।
এখন LEFT এবং SEARCH ফাংশন কোম্বিনেশন ব্যবহার করে প্রথম নাম বের করব।
একটি খালি সেল যেমন C3 সিলেক্ট করুন এবং ফর্মুলা =LEFT(B5,SEARCH(" ",B5)) টাইপ করুন যেখানে B5 হলো যে সেল থেকে নাম আলাদা করতে চাই। এন্টার প্রেস করুন এবং ফিল হ্যান্ডেল টুল ব্যবহার করে কলামের বাকি আউটপুট পান।

একইভাবে নিচের ফর্মুলা ব্যবহার করে শেষ নাম বের করা যায়:
=RIGHT(B5,LEN(B5)-FIND("*",SUBSTITUTE(B5," ","*",LEN(B5)-LEN(SUBSTITUTE(B5," ",""))))) যেখানে B5 হলো যে টেক্সট ভাগ করতে চাই, স্পেস(“ “) আমাদের ডিলিমিটার।

➥ আরও পড়ুন: এক্সেল ডিলিমিটার ফর্মুলা দিয়ে সেল ভাগ করুন
ii. লাইন ব্রেক দিয়ে সেল ভাগ করুন
এই পদ্ধতিও আগেরটার মতোই কিন্তু এখানে CHAR ফাংশন ব্যবহার করতে হবে।
CHAR ফাংশন আপনার ডেটাসেটের ক্যারেক্টার সেট থেকে কোড নম্বর অনুযায়ী ক্যারেক্টার রিটার্ন করে। এখানে কোড বলতে ASCII কোড বোঝানো হয়।
সিনট্যাক্স:
=CHAR (number)
আর্গুমেন্ট:
number – ১ থেকে ২৫৫ এর মধ্যে একটি নম্বর।
এখন একটি খালি সেলে ফর্মুলা দিয়ে প্রথম নাম পান এবং ফিল হ্যান্ডেল টুল ব্যবহার করে বাকি সেল পূরণ করুন। ফর্মুলা: =LEFT(B5,SEARCH(CHAR(10),B5,1)-1) যেখানে B5 হলো টেক্সট এবং ১০ হলো লাইন ফিডের ASCII কোড।
নোট: আমরা ১ বিয়োগ করেছি কারণ ডিলিমিটার "স্পেস" এক্সট্র্যাক্ট করতে চাই না।

একইভাবে একটি খালি সেলে ফর্মুলা দিন: =RIGHT(B5,LEN(B5)-SEARCH(CHAR(10),B5,SEARCH(CHAR(10),B5))) যেখানে B5 হলো ভাগ করার সেল এবং ১০ হলো লাইন ফিডের ASCII কোড। এন্টার প্রেস করুন এবং ফিল হ্যান্ডেল টুল ব্যবহার করে কলামের বাকি সেল পূরণ করুন।

আরও পড়ুন: এক্সেল ফর্মুলা দিয়ে সেল ভাগ: ৮ উদাহরণ
৪. টেক্সট+নাম্বার প্যাটার্নের সেল ভাগ করুন
কখনো কখনো এমন সেল ভাগ করতে হয় যাতে টেক্সট+নাম্বার প্যাটার্ন থাকে। সেক্ষেত্রে SUM ফাংশন অন্যান্য ফাংশনসহ ব্যবহার করতে হয়।
SUM ফাংশন সরাসরি মানগুলোর যোগফল রিটার্ন করে। মানগুলো রেঞ্জ, অ্যারে, নাম্বার ইত্যাদি হতে পারে। সিনট্যাক্স:
=SUM (number1, [number2], [number3], …)
আর্গুমেন্টগুলো:
number1 – যোগ করার প্রথম মান।
number2 – [ঐচ্ছিক] যোগ করার দ্বিতীয় মান।
number3 – [ঐচ্ছিক] যোগ করার তৃতীয় মান।
এমন প্যাটার্ন ভিত্তিক সেল ভাগ করার সবচেয়ে সহজ উপায় হলো প্রথমে নাম্বার আলাদা করা। তারপর টেক্সট বের করা। এখন একটি খালি সেলে ফর্মুলা টাইপ করুন: =RIGHT(B5,SUM(LEN(B5) - LEN(SUBSTITUTE(B5, {"0","1","2","3","4","5","6","7","8","9"},"")))) যেখানে B5 হলো যে সেলটি ভাগ করতে চান।
এন্টার প্রেস করুন এবং ফিল হ্যান্ডেল টুল ব্যবহার করে বাকি সেল পূরণ করুন।

টেক্সট বের করার জন্য একটি খালি সেলে ফর্মুলা দিন: =LEFT(B5,LEN(B5)-LEN(D5)) যেখানে B5 হলো ভাগ করার সেল এবং D5 হলো আগের ফর্মুলা থেকে পাওয়া নাম্বার।

৫. পাওয়ার কুয়েরি ব্যবহার করে সেল ভাগ করুন
পাওয়ার কুয়েরি ব্যবহার করেও নামকে প্রথম এবং শেষ নামে ভাগ করা যায়। এটি মাইক্রোসফটের একটি ফ্রি অ্যাড-ইন যা বিভিন্ন সোর্স থেকে ডেটা ইম্পোর্ট করে এবং প্রয়োজনে ক্লিন, ট্রান্সফর্ম ও রিশেপ করতে সাহায্য করে।
নিচের ধাপগুলো অনুসরণ করুন:
ধাপসমূহ:
- পুরো সেল রেঞ্জ B4:B11 সিলেক্ট করুন
- ডেটা ট্যাব থেকে ফ্রম টেবিল ক্লিক করুন
- ওকে প্রেস করুন

এখন আপনি পাওয়ার কুয়েরি এডিটরে আছেন। হোম > স্প্লিট কলাম > বাই ডিলিমিটার সিলেক্ট করুন।

নিচের ফিগার দেখবেন। স্পেস ডিলিমিটার হিসেবে বেছে নিন এবং ওকে প্রেস করুন।

বিশ্লেষণ সম্পন্ন। এখন ফাইলটি আপনার ওয়ার্কশীটে লোড করতে হবে। হোম > ক্লোজ & লোড > ক্লোজ & লোড টু সিলেক্ট করুন।

ডেস্টিনেশন বেছে নিন এবং লোড প্রেস করুন।

শেষে আউটপুট নিচের মতো হবে:

আরও পড়ুন: এক্সেলে একটি সেলকে দুটি রোতে ভাগ করা (৩ পদ্ধতি)
মনে রাখবেন
ফর্মুলা ফর্মুলা বারে ইনপুট দিতে সতর্ক থাকুন।
পাশাপাশি ফাইল নাম, ফাইল লোকেশন এবং এক্সেল ফাইলের এক্সটেনশন সম্পর্কেও সাবধান থাকুন।
উপসংহার
আমি সবচেয়ে কার্যকর এবং সুবিধাজনক পদ্ধতিগুলো আলোচনা করেছি। আপনার ডেটা এবং প্রয়োজন অনুযায়ী একটি বেছে নিন। যেকোনো পরামর্শ বা বিভ্রান্তি থাকলে জানান।
সाथ দিয়ে থাকার জন্য ধন্যবাদ।
আরও পড়ুন
- এক্সেলে একটি সেলকে আড়াঘাত ও অনুভূমিকভাবে অর্ধেক ভাগ করা
- কমা দিয়ে স্ট্রিং ভাগ করার এক্সেল ফর্মুলা (৫ উদাহরণ)
- VBA: ক্যারেক্টার দিয়ে স্ট্রিং ভাগ করা (৬ উপযোগী উদাহরণ)
- এক্সেলে একটি সেলে দুটি লাইন बनाने (৪ পদ্ধতি)
- VBA: স্ট্রিংকে সেলে ভাগ করা (৪ উপযোগী অ্যাপ্লিকেশন)
- VBA: ক্যারেক্টার সংখ্যা অনুযায়ী স্ট্রিং ভাগ করা (২ সহজ পদ্ধতি)