CSV থেকে Excel রূপান্তর: টুলটি কী করে এবং কেন এটি ভিন্ন
আপনার কাছে যদি একটি CSV ফাইল থাকে — কমা, সেমিকোলন বা ট্যাব দ্বারা পৃথক করা সরল টেক্সট — এবং আপনি সেটিকে Excel ওয়ার্কবুকে (XLSX) রূপান্তর করতে চান, তাহলে এই পৃষ্ঠাটি সেই কাজটি করে। টুলটি CSV-এর প্রতিটি সারি ও কলাম নতুন ফাইলের প্রথম ওয়ার্কশিটে সংরক্ষণ করে, এবং ডাউনলোডের আগে আপনি ফলাফলের একটি প্রিভিউ দেখতে পারেন।
কিন্তু সাধারণ CSV-টু-XLSX কনভার্টারগুলোর থেকে এই টুলটি কীভাবে আলাদা? প্রধান পার্থক্যগুলো তিনটি:
- CSV-তে কোনো ডেটা টাইপ নেই: প্রতিটি ফিল্ড টেক্সট হিসাবে আসে। সংখ্যা, তারিখ এবং শূন্য দিয়ে শুরু হওয়া আইডেন্টিফায়ার (যেমন পিন কোড, প্রোডাক্ট কোড) XLSX-এ টেক্সট হিসাবেই সংরক্ষিত হয়। আপনার যদি সংখ্যা বা তারিখ টাইপের প্রয়োজন হয়, তাহলে রূপান্তরের পর এক্সেলে সেই সেল ফরম্যাট নিজে সেট করতে হবে।
- CSV একাধিক শিট, ফর্মুলা, সেল স্টাইলিং বা ফরম্যাটিং বহন করতে পারে না: উৎসে কিছুই নেই, তাই XLSX শুধু কাঁচা ডেটা দিয়েই তৈরি হয় — কোনো স্বয়ংক্রিয় টাইপিং বা ফরম্যাটিং নেই।
- ডেলিমিটার ব্যবহারকারীকে বেছে নিতে হয়: কমা, সেমিকোলন বা ট্যাব — কারণ CSV ফাইল নিজে ঘোষণা করে না কোন চিহ্ন ডেলিমিটার। ভুল ডেলিমিটার বাছাই করলে পার্সিং ত্রুটি ঘটতে পারে।
টুলটি পুরো ফাইলটিকে একটি একক ফ্ল্যাট টেবিল হিসেবে পড়ে। যদি CSV-র মধ্যে এম্বেডেড লাইন ব্রেক, এম্বেডেড কমা, বা আনকোটেড ফিল্ড থাকে যা প্রত্যাশিত ডেলিমিটার প্যাটার্ন ভঙ্গ করে, তাহলে "এই CSV পার্স করা যায়নি" ত্রুটি বার্তা দেখাতে পারে।
ইনপুট ও আউটপুট: কী দিতে হবে এবং কী পাবেন
আপনি যা সরবরাহ করবেন:
- একটি একক CSV ফাইল
- CSV ডেলিমিটার পছন্দ: কমা, সেমিকোলন, বা ট্যাব
ফিরে পাবেন:
- একটি ডাউনলোডযোগ্য XLSX ফাইল যাতে রূপান্তরিত ডেটা আছে
- রূপান্তরিত টেবিলের একটি প্রিভিউ
- ফলাফল টেবিলের সারি ও কলাম সংখ্যা
- আউটপুট ফাইলের সাইজ
ডেটা টাইপ ম্যাপিং এবং সীমাবদ্ধতা
CSV একটি প্লেইন-টেক্সট ফরম্যাট; এতে কোনো কোষের ধরন নির্ধারিত থাকে না। প্রতিটি মানই লেখা (string) হিসাবে গণ্য হয়। যখন XLSX তৈরি হয়, সেই লেখাগুলোই টেক্সট টাইপের সেল হিসাবে বসে। এটি একটি ইচ্ছাকৃত পছন্দ, যা সাধারণ CSV ইম্পোর্ট ফিচারের থেকে ভিন্ন — অনেক এক্সেল ইম্পোর্ট উইজার্ড স্বয়ংক্রিয়ভাবে সংখ্যা বা তারিখ চিহ্নিত করে এবং পিন কোডের মতো শূন্য-অগ্রবর্তী মান থেকে শূন্য সরিয়ে ফেলে। এই টুলটি তা করে না, যেটা নির্দিষ্ট ব্যবহারকারীদের জন্য লাভজনক।
উদাহরণ: একটি CSV-তে যদি "00123" লেখা থাকে, তবে এক্সেলে সরাসরি খুললে সেটি 123 সংখ্যায় রূপান্তরিত হতে পারে। কিন্তু এই টুল "00123" টেক্সট হিসাবেই রাখবে। পরে ব্যবহারকারী চাইলে সেল ফরম্যাট পরিবর্তন করে সংখ্যা বা কাস্টম ফরম্যাট বসাতে পারেন।
তবে এখানে একটি সীমাবদ্ধতা আছে: এক্সেলের ফর্মুলা, কন্ডিশনাল ফরম্যাটিং, সেল বর্ডার, ফন্ট — এসব কিছুরই অস্তিত্ব CSV-তে নেই, তাই আউটপুট XLSX-তেও থাকবে না। শুধু কাঁচা ডেটা, একটিমাত্র ওয়ার্কশিটে।
ডেলিমিটার নির্বাচন ও পার্সিং সমস্যা
CSV-র একটি ফাইল এক্সটেনশন.csv হলেও ভেতরে কমা, সেমিকোলন বা ট্যাব — যেকোনোটি থাকতে পারে। বিশেষ করে ইংরেজি ও ইউরোপীয় লোকেলে কমা ও সেমিকোলনের ব্যবহার উল্টো হয়। টুলটি ব্যবহারকারীকে ডেলিমিটার বেছে নেওয়ার অনুমতি দেয়, কারণ ফাইল নিজে তা ঘোষণা করে না।
ভুল ডেলিমিটার বেছে নেওয়ার ফল:
- ফাইলটি বিভক্ত হবে না; পুরো সারি একটিমাত্র কলামে চলে আসতে পারে
- বা অনেক কলাম ভুল জায়গায় বিভক্ত হবে
- পার্সার মান অনুযায়ী কাজ করতে না পেরে "এই CSV পার্স করা যায়নি" ত্রুটি দেখাবে
এম্বেডেড কমা ও কোটেশন: CSV স্ট্যান্ডার্ড অনুযায়ী, কোনো ফিল্ডের ভেতরে যদি ডেলিমিটার থাকে, সেটিকে ডাবল কোটের মধ্যে রাখতে হয়। কিন্তু অনেক এক্সপোর্ট এই নিয়ম ঠিকমতো মানে না। যদি আপনার CSV-তে কোটেড ফিল্ড না থাকে তবে এম্বেডেড কমা থাকলে টুলটি সঠিকভাবে পার্স করতে ব্যর্থ হবে।
এম্বেডেড লাইন ব্রেক: CSV-র একটি সারির ভেতর নিউলাইন থাকলে (যেমন ঠিকানার মধ্যে), তাও সমস্যা তৈরি করে। XLSX-এ একক কোষে নিউলাইন সংরক্ষণ করা সম্ভব, কিন্তু CSV-তে সেটি সারি বিভ্রাট তৈরি করতে পারে। টুলটি ফাইলটিকে ফ্ল্যাট টেবিল হিসাবে পড়ে, তাই এম্বেডেড লাইন ব্রেকের কারণে সারি সঠিকভাবে চিহ্নিত না-ও হতে পারে。
ক্লায়েন্ট-সাইড প্রসেসিং ও গোপনীয়তা
এই রূপান্তর সম্পূর্ণ আপনার ব্রাউজারের ভেতরেই ঘটে — কোনো ডেটা সার্ভারে আপলোড হয় না। ফাইলটি মেমরিতে পড়া হয়, প্রক্রিয়া করা হয়, এবং XLSX ব্লব তৈরি করে ডাউনলোড দেওয়া হয়। এর অর্থ:
- আপনার সংবেদনশীল ডেটা (যেমন গ্রাহক তালিকা, আর্থিক রিপোর্ট) ইন্টারনেটে পাঠানো হয় না
- দ্রুত কাজ করে — বড় ফাইল ছাড়া কোনো নেটওয়ার্ক লেটেন্সি নেই
- অফলাইনেও ব্যবহারযোগ্য যদি পৃষ্ঠাটি আগে লোড করা থাকে
গোপনীয়তা সচেতন প্রতিষ্ঠান বা ব্যক্তিরা এই বৈশিষ্ট্যের জন্য বিশেষভাবে এই টুলটি পছন্দ করেন।
সাধারণ ত্রুটি বার্তা ও তাদের অর্থ
টুলটি ব্যবহারের সময় আপনি নিচের ত্রুটিগুলোর যেকোনো একটি দেখতে পারেন:
| ত্রুটি বার্তা | কারণ ও সমাধান |
|---|---|
| "Choose one file first." | ব্যবহারকারী ফাইল না বাছাই করেই রূপান্তর চেষ্টা করছেন। |
| "Choose a CSV, JSON or XLSX file." | ভুল ফাইল টাইপ আপলোড করা হয়েছে। শুধু CSV অনুমোদিত। |
| "এই ফাইলটি খুব বড়। ‹সর্বোচ্চ› এর নিচে ফাইল ব্যবহার করুন।" | ফাইল সাইজ টুলের সীমা (8 MB) ছাড়িয়ে গেছে। ছোট ফাইল চেষ্টা করুন। |
| "Could not convert this file." | সাধারণ রূপান্তর ব্যর্থতা — ফাইল নষ্ট বা অসমর্থ হতে পারে। |
| "এই CSV পার্স করা যায়নি।" | ডেলিমিটার ভুল, বা ফাইল ফরম্যাট CSV স্ট্যান্ডার্ড মেনে চলে না। ডেলিমিটার পরিবর্তন করে আবার চেষ্টা করুন। |
| "This file has no table rows." | CSV ফাইল খালি বা শুধু হেডার আছে কিন্তু কোনো ডেটা সারি নেই। |
| "This conversion is taking too long. Try a smaller file." | বড় ফাইল বা জটিল ডেটার কারণে টাইমআউট। |
| "Conversion cancelled." | ব্যবহারকারী প্রক্রিয়ার মাঝপথে বাতিল বাটনে ক্লিক করেছেন। |
কাদের জন্য এই টুল উপযোগী
- যে কোনো ব্যক্তি যার কাছে CSV রিপোর্ট, ডাটাবেস এক্সপোর্ট বা মেইলিং লিস্ট আছে এবং সেটিকে এক্সেলে খুলতে চান কলাম হেডারসহ।
- যে দলের সহকর্মীরা শুধু এক্সেল ফাইলের সাথে কাজ করেন, তাদের সাথে টেবুলার ডেটা শেয়ার করতে চান।
- যারা CSV ডেটার উপর এক্সেলের সর্টিং, ফিল্টারিং বা পিভট টেবিল প্রয়োগ করতে চান।
- যারা নিশ্চিত করতে চান যে শূন্য-অগ্রবর্তী আইডেন্টিফায়ার (যেমন জিপ কোড, অ্যাকাউন্ট নম্বর) CSV ইম্পোর্ট প্রক্রিয়ায় মুছে না যায় — এই কনভার্টার সেগুলো টেক্সট হিসাবে রাখে।
- যারা গোপনীয়তা বা নিরাপত্তার কারণে তাদের CSV সার্ভারে আপলোড করতে চান না।
FAQ (প্রায়শই জিজ্ঞাসিত প্রশ্ন)
প্রশ্ন ১: আমি কি একটি CSV ফাইল একাধিকবার রূপান্তর করতে পারি? হ্যাঁ, যতবার ইচ্ছা। প্রতিবার আলাদা ডেলিমিটার বেছে নিতে পারেন। টুলটি সম্পূর্ণ ক্লায়েন্ট-সাইড, তাই কোনো সীমাবদ্ধতা নেই।
প্রশ্ন ২: XLSX ফাইলে কি ফর্মুলা বা চার্ট থাকবে? না। CSV-তে কোনো ফর্মুলা বা চার্ট নেই, তাই আউটপুটে শুধু কাঁচা ডেটা থাকবে। পরে এক্সেলে নিজে ফর্মুলা যোগ করতে হবে।
প্রশ্ন ৩: আমার CSV-তে কমা এবং সেমিকোলন উভয়ই আছে। কী করব? ফাইলটি প্রথমে পরীক্ষা করুন: কোন চিহ্নটি সারি ভাগ করে? সাধারণত একটিই ডেলিমিটার ব্যবহৃত হয়। যদি উভয়ই অদ্ভুতভাবে থাকে, তবে ফাইলটি সম্ভবত ত্রুটিপূর্ণ। প্রথমে অন্য এডিটরে ফাইলটি স্বাভাবিক করুন, তারপর রূপান্তর করুন。
প্রশ্ন ৪: আউটপুট ফাইলের নাম কী? ডাউনলোড ফাইলটির নাম সাধারণত output.xlsx বা исход CSV ফাইলের নাম অনুসারে নির্ধারিত হয় (টুলের নকশা অনুযায়ী)।
প্রশ্ন ৫: ফাইলের সর্বোচ্চ আকার কত? সীমা হল প্রতি ফাইলে 8 MB, এবং টেবিলগুলি 10,000 সারি এবং 200 কলামে সীমাবদ্ধ। যদি আপনার ফাইল বড় হয়, তবে এটিকে ছোট ছোট অংশে ভাগ করে একবারে একটি করে রূপান্তর করুন। প্রায় 12 সেকেন্ডের বেশি সময় ধরে চলা একটি রূপান্তরও বন্ধ করে দেওয়া হয়, যা ধীর গতির ডিভাইসে সীমার কাছাকাছি ফাইলগুলির ক্ষেত্রে ঘটতে পারে।
প্রশ্ন ৬: রূপান্তর করতে কি ইন্টারনেট সংযোগ প্রয়োজন? প্রথমবার পৃষ্ঠাটি লোড করতে ইন্টারনেট প্রয়োজন। কিন্তু একবার পৃষ্ঠা ব্রাউজারে ক্যাশে হয়ে গেলে অফলাইনেও কাজ করতে পারে — কারণ প্রক্রিয়াকরণ ব্রাউজারের ভেতরেই ঘটে।