എക്സൽ മുതൽ CSV വരെ: ഒരു സമ്പന്നമായ സ്പ്രെഡ്ഷീറ്റിനെ എങ്ങനെ ഒരു ലളിതമായ വാചക പട്ടികയാക്കാം
നിങ്ങൾക്ക് ഒരു.xlsx ഫയൽ ലഭിച്ചു – അതിൽ ഒന്നിലധികം ഷീറ്റുകൾ, നിറങ്ങൾ, ഫോർമുലകൾ, പിന്നെ അതിമനോഹരമായ ഫോർമാറ്റിംഗ്. എന്നാൽ നിങ്ങൾക്ക് വേണ്ടത് ഒരു പ്ലെയിൻ CSV ഫയൽ, അതും ഒന്നാം ഷീറ്റിലെ യഥാർത്ഥ മൂല്യങ്ങൾ മാത്രം. ഇവിടെയാണ് ഈ പേജ് വ്യത്യസ്തമാകുന്നത്: ഇത് ഒരു Excel ഫയലിനെ അതിന്റെ എല്ലാ ഫോർമാറ്റിംഗും ഫോർമുലയും ഒന്നിലധികം ഷീറ്റുകളും ഉപേക്ഷിച്ച്, വെറും ഡിലിമിറ്റർ വേർതിരിച്ച വാചകത്തിലേക്ക് മാറ്റുന്നു. എല്ലാം നിങ്ങളുടെ ബ്രൗസറിനുള്ളിൽ തന്നെ നടക്കുന്നു – ഫയൽ ഒരിക്കലും സെർവറിലേക്ക് അയയ്ക്കില്ല. ഇത് ഒരു "നഷ്ടപരിഹാരം" ഉള്ള പരിവർത്തനമാണ് – പക്ഷേ ആ നഷ്ടം മനസ്സിലാക്കിയാൽ, നിങ്ങൾക്ക് കൃത്യമായ CSV ലഭിക്കും.
എന്തുകൊണ്ട് XLSX നും CSV യ്ക്കും ഇത്ര വ്യത്യാസമുണ്ട്?
XLSX (Office Open XML) എന്നത് യഥാർത്ഥത്തിൽ ഒരു കംപ്രസ് ചെയ്ത സിപ്പ് ആർക്കൈവ് ആണ്, അതിൽ XML ഫയലുകൾ, ഇമേജുകൾ, ഫോർമാറ്റിംഗ് നിർവചനങ്ങൾ, ഫോർമുലകൾ, ഒന്നിലധികം വർക്ക്ഷീറ്റുകൾ എന്നിവ അടങ്ങിയിരിക്കുന്നു. CSV (Comma-Separated Values) എന്നത് ഒരു ലളിതമായ വാചക ഫോർമാറ്റ് മാത്രമാണ് – വരികളും നിരകളും, കോമ അല്ലെങ്കിൽ മറ്റൊരു ഡിലിമിറ്റർ കൊണ്ട് വേർതിരിച്ചിരിക്കുന്നു. ഫോർമുലകൾ, സെൽ തരങ്ങൾ, നിറങ്ങൾ, ഫോണ്ടുകൾ, ലയിപ്പിച്ച സെല്ലുകൾ – CSV യ്ക്ക് ഇവയൊന്നും സൂക്ഷിക്കാൻ കഴിയില്ല. അതുകൊണ്ട് പരിവർത്തനം ലളിതമാണ്: ഓരോ സെല്ലിന്റെയും കണക്കാക്കിയ മൂല്യം (അല്ലെങ്കിൽ അവസാനമായി സംരക്ഷിച്ച ദൃശ്യ മൂല്യം) വായിച്ച്, ആ വാചകം CSV യുടെ ഒരു ഫീൽഡായി എഴുതുക. ഫോർമുലകൾ പുനർ-കണക്കാക്കില്ല – പകരം, ആ ഫോർമുല എക്സലിൽ അവസാനമായി കണക്കാക്കിയത് മാത്രമേ ലഭിക്കൂ.
എന്താണ് നഷ്ടപ്പെടുന്നത്?
- മറ്റ് ഷീറ്റുകൾ: ടൂൾ ആദ്യത്തെ വർക്ക്ഷീറ്റ് മാത്രം എടുക്കും. നിങ്ങൾക്ക് മറ്റ് ഷീറ്റുകൾ വേണമെങ്കിൽ, അവ ഓരോന്നും വെവ്വേറെ പരിവർത്തനം ചെയ്യണം അല്ലെങ്കിൽ ആദ്യം Excel-ൽ തന്നെ ഒരു ഷീറ്റിലേക്ക് ലയിപ്പിക്കണം.
- ഫോർമാറ്റിംഗ്: നിറങ്ങൾ, ബോൾഡ്, ഫോണ്ട് വലുപ്പം, സെൽ ബോർഡറുകൾ, ലയിപ്പിച്ച സെല്ലുകൾ – ഇവയെല്ലാം പൂർണ്ണമായും നഷ്ടമാകും. CSV യ്ക്ക് വാചകത്തിന്റെ ഘടന മാത്രമേയുള്ളൂ.
- സെൽ തരങ്ങൾ: ഒരു സെൽ "തീയതി" (date), "നമ്പർ" (number), "കറൻസി" (currency) എന്നിങ്ങനെയായിരിക്കാം. CSV യിൽ എല്ലാം വാചകമായി മാറും. അതായത്, Excel-ൽ
01/01/2024എന്ന് കാണിച്ചാലും, CSV യിൽ അത് സ്ട്രിംഗ് ആയി വരും. നിങ്ങളുടെ ടാർഗെറ്റ് സിസ്റ്റത്തിന് ആവശ്യമുള്ള ഡാറ്റാ തരത്തിലേക്ക് പിന്നീട് പരിവർത്തനം ചെയ്യേണ്ടി വന്നേക്കാം. - ലീഡിംഗ് സീറോകൾ: Excel-നുള്ളിൽ ഒരു നമ്പറായി
00123നൽകിയാൽ, അത്123ആയി സംഭരിക്കപ്പെടും. നിങ്ങൾ ആദ്യം Excel-ൽ സെൽ ഫോർമാറ്റ് "text" ആയി മാറ്റി, പിന്നെ00123എന്ന് ടൈപ്പ് ചെയ്തിട്ടുണ്ടെങ്കിൽ മാത്രമേ അത് CSV-യിൽ00123ആയി നിലനിൽക്കൂ. അതിനാൽ, PDF-കളിൽ നിന്ന് ശേഖരിച്ച സീറോ-പാഡഡ് കോഡുകൾ Excel-ൽ paste ചെയ്യുമ്പോൾ ശ്രദ്ധിക്കുക.
പ്രവേശന തടസ്സങ്ങളും അവ കൈകാര്യം ചെയ്യേണ്ടവിധം
CSV ഫോർമാറ്റിന് സ്വന്തമായി ചില പ്രശ്നങ്ങളുണ്ട്. ഒരു സെല്ലിൽ കോമ (,) ഉണ്ടെങ്കിൽ, അത് CSV-യിൽ ആ സെല്ലിനെ വിഭജിക്കും. അതിനാൽ ടൂൾ ആ സെല്ലിനെ ഉദ്ധരണി ചിഹ്നത്തിൽ (double quotes) പൊതിയും. ഉദാഹരണത്തിന്, "Smith, John" എന്ന മൂല്യം CSV-യിൽ "Smith, John" ആയി വരും. അതുപോലെ, സെല്ലിൽ ഒരു പുതിയ വരി (line break) ഉണ്ടെങ്കിലും ഉദ്ധരണി ചേർക്കും. പക്ഷേ, ഇത്തരം ഉദ്ധരിച്ച ഫീൽഡുകൾ ചില പഴയ സോഫ്റ്റ്വെയറുകൾ ശരിയായി മനസ്സിലാക്കില്ല – ഉദാഹരണത്തിന്, Excel-ൽ CSV തുറക്കുമ്പോൾ line breaks ഉള്ള സെല്ലുകൾ വിചിത്രമായി പ്രത്യക്ഷമായേക്കാം. നിങ്ങൾ ഉപയോഗിക്കുന്ന ഡാറ്റാബേസ് അല്ലെങ്കിൽ സ്ക്രിപ്റ്റ് RFC 4180 (CSV-യുടെ സ്റ്റാൻഡേർഡ്) അനുസരിക്കുന്നുണ്ടെന്ന് ഉറപ്പാക്കുക.
ഉദാഹരണം:
Excel-ൽ:
| A | B |
|---|---|
| John | Doe |
| Smith, Jr. | 100 |
| Alice | Line1\nLine2 |
CSV (കോമ ഡിലിമിറ്റർ):
John,Doe
"Smith, Jr.",100
Alice,"Line1
Line2"
ഇവിടെ, മൂന്നാം വരിയിലെ "Line1" നും "Line2" നും ഇടയിൽ ഒരു actual line break ഉണ്ട്. അത് CSV പാർസർ ഒരു പുതിയ റെക്കോർഡ് ഫീൽഡ് ആയി കണക്കാക്കിയേക്കാം. ഇതൊരു സാധാരണ പ്രശ്നമാണ്.
ഡിലിമിറ്റർ തിരഞ്ഞെടുക്കൽ: കോമ, സെമികോളൻ, ടാബ്
നിങ്ങളുടെ ടാർഗെറ്റ് സിസ്റ്റത്തിന്റെ ആവശ്യകത അനുസരിച്ച് ഡിലിമിറ്റർ തിരഞ്ഞെടുക്കുക. കോമ ആണ് ഏറ്റവും സാധാരണം, പക്ഷേ ചില യൂറോപ്യൻ രാജ്യങ്ങളിൽ കോമ ദശാംശ വിഭാജകമായി ഉപയോഗിക്കുന്നു – അവിടെ സെമികോളൻ (;) ഉപയോഗിക്കുന്നതാണ് നല്ലത്. ടാബ് (\t) പല ഡാറ്റാബേസുകളും സ്വീകരിക്കും, പ്രത്യേകിച്ചും ഡാറ്റയിൽ കോമ അല്ലെങ്കിൽ സെമികോളൻ സ്വാഭാവികമായി ഉണ്ടാകുമ്പോൾ. എന്നാൽ ടാബ് ഉള്ള ഒരു ഫയൽ Excel-ൽ തുറക്കുമ്പോൾ ഒറ്റനോട്ടത്തിൽ കൃത്യമായി പട്ടികപ്പെടുത്തിയതായി തോന്നില്ല – നിങ്ങൾ "Data -> From Text/CSV" ഉപയോഗിച്ച് import ചെയ്യണം.
| ഡിലിമിറ്റർ | ഉപയോഗ സാഹചര്യം |
|---|---|
| കോമ (,) | സാധാരണ CSV, US/EU-യിലെ ഭാഷകൾ (കോമ ദശാംശമല്ലെങ്കിൽ) |
| സെമികോളൻ (;) | യൂറോപ്പിൽ (ഉദാ: ഫ്രാൻസ്, ജർമ്മനി) കോമ ദശാംശം ആകുമ്പോൾ; Excel-ൻ്റെ "Save As CSV" പലപ്പോഴും semicolon ഉപയോഗിക്കുന്നു |
| ടാബ് (\t) | ഡാറ്റാബേസ് ഇംപോർട്ടുകൾ, Python/R സ്ക്രിപ്റ്റുകൾ; ഫീൽഡുകളിൽ സ്വാഭാവികമായി കോമ/സെമികോളൻ ഉള്ളപ്പോൾ |
എന്തുകൊണ്ട് "ആദ്യ ഷീറ്റ്" മാത്രം?
XLSX ഫയലിൽ സാധാരണയായി Sheet1, Sheet2, Data, Summary തുടങ്ങി പല ഷീറ്റുകളും ഉണ്ടാകും. CSV ഫയലിന് ഒരു ഷീറ്റ് മാത്രമേ ഉള്ളൂ. അതിനാൽ, നിങ്ങൾക്ക് ആവശ്യമുള്ള ഡാറ്റ ഏത് ഷീറ്റിലാണോ അത് ആദ്യ ഷീറ്റിലേക്ക് നീക്കുക, അല്ലെങ്കിൽ മറ്റ് ഷീറ്റുകൾ വെവ്വേറെ പരിവർത്തനം ചെയ്യുക. ഫാക്റ്റ് ഷീറ്റിലെ ഒരു പ്രധാന മുന്നറിയിപ്പ് ഇതാണ്: "The tool will not attempt to decide how nested data should be flattened; you must prepare the Excel file so that nested fields are already in separate columns or represented as text." അതായത്, നിങ്ങളുടെ Excel-ലെ ഒരു സെല്ലിൽ നെസ്റ്റഡ് ഡാറ്റ (ഉദാ: JSON, പട്ടികകൾ) ഉണ്ടെങ്കിൽ, അവയെ വെവ്വേറെ സെല്ലുകളാക്കി മാറ്റുക, അല്ലെങ്കിൽ ഒരു സ്ട്രിംഗ് ആയി ഉദ്ധരിക്കുക. CSV-ക്ക് ഘടന മനസ്സിലാകില്ല.
പിശക് സന്ദേശങ്ങളും പ്രതീക്ഷിക്കേണ്ട കാര്യങ്ങളും
ഫയൽ അപ്ലോഡ് ചെയ്യുമ്പോൾ, ചില സാധാരണ പിശകുകൾ നിങ്ങൾക്ക് കാണാം. ഇവ ടൂളിൽ നിന്ന് നേരിട്ട് വരുന്നവയാണ്, അവ മലയാളത്തിലല്ല – എങ്കിലും അവ എന്താണെന്നും അർത്ഥമെന്താണെന്നും അറിയുക:
- "Choose one file first." – നിങ്ങൾ ഒരു ഫയൽ പോലും തിരഞ്ഞെടുത്തില്ല.
- "Choose a CSV, JSON or XLSX file." – തെറ്റായ ഫോർമാറ്റ് (ഉദാ: PDF,.numbers).
- "This file is too large. Use a file under ‹max›." – ഫയൽ വലുപ്പ പരിധി കവിഞ്ഞു. ‹max› എന്നത് ടൂൾ നിർണ്ണയിക്കുന്നു.
- "This Excel file could not be opened." –.xlsx ഫയൽ കേടായിരിക്കാം, അല്ലെങ്കിൽ മറ്റൊരു Excel ഫോർമാറ്റ് (.xls) ആയിരിക്കാം.
- "This file has no table rows." – ആദ്യ ഷീറ്റിൽ ഡാറ്റ ഇല്ല.
- "This table has more than ‹max› rows." – വരികളുടെ എണ്ണം പരിധി കവിഞ്ഞു.
- "This table has more than ‹max› columns." – കോളങ്ങൾ കൂടുതലാണ്.
- "Conversion cancelled." – ഉപയോക്താവ് പരിവർത്തനം നിർത്തിയത്.
- "This conversion is taking too long. Try a smaller file." – വളരെ വലിയ ഫയൽ; ടൈമൗട്ട്.
ഔട്ട്പുട്ട്: എന്താണ് നിങ്ങൾക്ക് ലഭിക്കുക?
പരിവർത്തനം പൂർത്തിയാകുമ്പോൾ, നിങ്ങൾക്ക് ഒരു പ്രിവ്യൂ കാണാം – പട്ടികയുടെ ആദ്യ കുറച്ച് വരികൾ. അതിനൊപ്പം, ഇവ കാണിക്കും:
- Rows: പരിവർത്തനം ചെയ്ത പട്ടികയിലെ വരികളുടെ എണ്ണം.
- Columns: നിരകളുടെ എണ്ണം.
- Output: ഔട്ട്പുട്ട് ഫയലിന്റെ വലുപ്പം (bytes-ൽ).
നിങ്ങൾക്ക് ആ ഫയൽ ഡൗൺലോഡ് ചെയ്യാം. വീണ്ടും ഓർക്കുക: നിങ്ങളുടെ ഡാറ്റ ഒരിക്കലും സെർവറിലേക്ക് പോകില്ല. ഇത് നിയമപരമായും രഹസ്യസ്വഭാവം പ്രധാനമായ ഡാറ്റയ്ക്ക് (ഉദാ: രോഗികളുടെ വിവരങ്ങൾ, കമ്പനി ഫിനാൻഷ്യൽസ്) വളരെ ഉപയോഗപ്രദമാണ്.
FAQ
Q: എന്റെ Excel ഫയലിൽ ഫോർമുലകൾ ഉണ്ട്. CSV-യിൽ അവ എങ്ങനെ വരും?
A: ഫോർമുലകൾ കണക്കാക്കപ്പെടുന്നില്ല. പകരം, ആ ഫോർമുല എഴുതിയ സമയത്ത് Excel സംരക്ഷിച്ച അവസാന ദൃശ്യ മൂല്യം (last-saved visible value) എടുക്കുന്നു. അതിനാൽ, യഥാർത്ഥ ഫോർമുല ലഭിക്കില്ല – അതിന്റെ ഔട്ട്പുട്ട് മാത്രം.
Q: എന്റെ Excel ഫയലിൽ ഒന്നിലധികം ഷീറ്റുകൾ ഉണ്ട്. രണ്ടാം ഷീറ്റ് എങ്ങനെ പരിവർത്തനം ചെയ്യും?
A: ഈ ടൂൾ ആദ്യ ഷീറ്റ് മാത്രം എടുക്കുന്നു. രണ്ടാം ഷീറ്റ് പരിവർത്തനം ചെയ്യാൻ, നിങ്ങൾ ആ ഷീറ്റിനെ Excel-ൽ തന്നെ ഒരു പുതിയ ഫയലിന്റെ ആദ്യ ഷീറ്റിലേക്ക് പകർത്തുക, അല്ലെങ്കിൽ ഷീറ്റുകൾ ഒന്നിൽ ലയിപ്പിക്കുക.
Q: CSV-യിലെ ലീഡിംഗ് സീറോകൾ നഷ്ടപ്പെടുന്നത് എങ്ങനെ തടയും?
A: Excel-ൽ ആ സെല്ലുകൾ "Text" ഫോർമാറ്റിലായിരിക്കണം. നിങ്ങൾ ഒരു നമ്പറായി 00123 ടൈപ്പ് ചെയ്താൽ, Excel അതിനെ 123 ആയി സംഭരിക്കും. സെൽ ഫോർമാറ്റ് Text ആക്കി, പിന്നീട് 00123 എന്ന് ടൈപ്പ് ചെയ്യുക, അല്ലെങ്കിൽ നമ്പറിന് മുമ്പ് ഒരു apostrophe (') ഇടുക – അത് Excel-ൽ കാണില്ല, പക്ഷേ മൂല്യത്തെ text ആക്കും.
Q: CSV-യിലെ ലൈൻ ബ്രേക്കുകൾ കാരണം പ്രശ്നം ഉണ്ടോ?
A: ഉണ്ടാകാം. സെല്ലിൽ മൾട്ടിലൈൻ ടെക്സ്റ്റ് ഉണ്ടെങ്കിൽ, CSV-യിൽ അത് RFC 4180 പ്രകാരം ഉദ്ധരിക്കപ്പെടും. ചില പഴയ പ്രോഗ്രാമുകൾ (ഉദാ: Excel-ലെ "Open" കമാൻഡ്) ഈ ലൈൻ ബ്രേക്കുകൾ ശരിയായി കൈകാര്യം ചെയ്യില്ല. നിങ്ങൾ CSV import ചെയ്യുമ്പോൾ "Data -> From Text/CSV" ഉപയോഗിക്കുക, അത് quote marks കണക്കിലെടുക്കും.
Q: ഈ ടൂൾ എന്റെ Excel-ലെ merged cells എങ്ങനെ കൈകാര്യം ചെയ്യും?
A: Merge ചെയ്ത സെല്ലുകൾ CSV-യിൽ അവയുടെ ആദ്യ സെല്ലിൽ മാത്രം മൂല്യം വയ്ക്കും, ബാക്കി സെല്ലുകൾ ശൂന്യമായിരിക്കും. ഉദാഹരണത്തിന്, A1:A3 merge ചെയ്ത് "Header" എന്നാൽ, CSV-ൽ A1-ൽ "Header" ഉം A2, A3 ശൂന്യവുമായിരിക്കും.
Q: എന്തുകൊണ്ട് ഈ പരിവർത്തനം "client-side" ആണ്?
A: ഫയൽ നിങ്ങളുടെ ബ്രൗസറിൽ തന്നെ (JavaScript ഉപയോഗിച്ച്) പ്രോസസ്സ് ചെയ്യുന്നു. ഇതിനർത്ഥം ഫയൽ ഒരിക്കലും ഇൻ്റർനെറ്റ് വഴി സെർവറിലേക്ക് പോകില്ല. രഹസ്യസ്വഭാവം ആവശ്യമുള്ള ഡാറ്റയ്ക്ക് ഇത് വളരെ നല്ലതാണ്.