CSV फ़ाइल के सभी स्तंभों को उद्धृत करने के लिए आप एक्सेल को कैसे मजबूर करते हैं?


89

एक्सेल केवल कुछ क्षेत्रों के आसपास उद्धरण देता है, मैं हर कॉलम के आसपास के उद्धरणों के साथ CSV फ़ाइल को सहेजने के लिए कैसे बाध्य करता हूं?

जवाबों:


44

यदि आप LibreOffice या OpenOffice में XLS फाइल को खोलते हैं, तो Save As .... और टेक्स्ट CSV को चुनें, यह एक CSV फाइल बनाने वाली गायों को बदल देता है, जिसमें सीमांकक के रूप में उद्धरण भी शामिल हैं। जैसे: "स्मिथ", "पीट", "कनाडा" "जोन्स", "मैरी", "इंग्लैंड"

बस "सभी पाठ कक्षों को कोट करें" बॉक्स को चेक करें: LibreOffice के साथ CSV को निर्यात करें

संख्यात्मक क्षेत्रों को भी उद्धृत करने के लिए, अपनी सेल रेंज को हाइलाइट करें और बचत से पहले सेल फ़ॉर्मेटिंग को "टेक्स्ट" में बदलें।


7
यद्यपि विशिष्ट प्रश्न का उत्तर नहीं है, यह मेरे क्लाइंट को मैक्रो का उपयोग करने की कोशिश करने की तुलना में एक सरल समाधान है!
डंकनमो नो

मैं हर दिन इस पद्धति का उपयोग करके थक गया हूं, इसीलिए मैं यहां हूं
vladkras

मुझे लगता है कि OpenOffice एक पोर्टेबल सॉफ्टवेयर है क्योंकि यह सबसे आसान और सबसे सुविधाजनक उपाय है। आपको कुछ भी स्थापित करने या कोई कोड लिखने की आवश्यकता नहीं है।
स्कॉट चू

सबसे अच्छा जवाब कभी !!
राज वर्धन

20
जवाब बिल्कुल नहीं। प्रश्न स्पष्ट रूप से एमएस एक्सेल के बारे में है
vladkras

43

इस पृष्ठ का हल भी है जो सीधे घोड़े के मुंह से आता है:

http://support.microsoft.com/kb/291296/en-us

यदि लिंक ख़राब होता है, तो निम्न विषय की खोज की जाएगी:

"एक्सेल में कॉमा और उद्धरण सीमांकक दोनों के साथ एक टेक्स्ट फ़ाइल निर्यात करने की प्रक्रिया" और "या Q291296"

tl; dr: उनके मैक्रो का उपयोग करें


10
कुछ ऐसा है जो ध्यान देने योग्य हो सकता है कि मैक्रो पंक्ति और स्तंभ मानों के लिए पूर्णांक का उपयोग कर रहा है। यदि आप 32768 पंक्तियों से अधिक निर्यात करने का प्रयास कर रहे हैं, तो आप एक त्रुटि के साथ प्रभावित होंगे। उदाहरण के लिए, डेटाटाइप्स को लॉन्ग में बदलना, उस समस्या को ठीक कर देगा।
दान

अच्छा स्थान (+1)। ऐसा लगता है कि उन्होंने कोड को अपडेट नहीं किया है क्योंकि यह केवल 32768 पंक्तियों के साथ एक्सेल के संस्करणों के लिए लिखा गया था।
सहमीपी

9
मैंने इस मैक्रो के साथ एक गिस्ट
fableal

@ ग्रेट ग्रेट स्निपेट! यह एक उत्तर में होना चाहिए।
xiankai

Office 2010, अभी भी चयनित पंक्तियों की उच्च संख्या पर अधिक है, जैसा कि @sahmeepee ने उल्लेख किया है।
Access_granted

18

मुझे यह आसान उपाय मिला:

  1. उन कक्षों को हाइलाइट करें जिन्हें आप उद्धरण जोड़ना चाहते हैं।
  2. राइट क्लिक करें और पर जाएँ: स्वरूप कक्ष → टैब: संख्या → श्रेणी: कस्टम
  3. निम्न को टाइप फ़ील्ड में पेस्ट करें : "''"@"''"(नीचे विवरण देखें)
  4. "ठीक है" पर क्लिक करें

आप जिस स्ट्रिंग को चिपका रहे हैं "''"@"''", वह दोहरी बोली, एकल उद्धरण, एकल उद्धरण, डबल उद्धरण, @ प्रतीक, डबल उद्धरण, एकल उद्धरण, एकल उद्धरण, डबल उद्धरण है।

यहां मिली जानकारी से Excel 2010 के लिए संपादित किया गया ।


हम्मम .. जिसने मुझे "एक (दो दोहरे उद्धरण) के बजाय '' ITEM '(दो एकल उद्धरण) दिए हैं। मैंने अभी-अभी एक खोज की और इसे ठीक करने के लिए प्रतिस्थापित किया।
क्ले निकोल्स

6
प्रारूप
manat

यदि आप लिबरऑफिस का उपयोग कर रहे हैं तो यह जवाब वास्तव में एक सटीक उत्तर था - इसमें प्रारूप> संख्या प्रारूप मेनू में "पाठ" विकल्प का पूरी तरह से अभाव है, इसके बावजूद कि उनके दस्तावेज़ में विकल्प मौजूद है। यदि आप LibreOffice में "स्वरूप कक्ष" पर राइट-क्लिक करते हैं, तो आपको ड्रॉपडाउन में प्रस्तुत कुछ बेकार 6 विकल्पों के बजाय - सेल व्याख्या विकल्पों की पूरी सूची दी जाती है।
1owk3y

@ मनत का जवाब है, लेकिन घुंघराले उद्धरण के बिना:\"@\"
MSC

12

Powershell सही ढंग से डंप करने के लिए प्रकट होता है। ऐसा कुछ

अगर आप शक्तियां नहीं जानते हैं तो windows मशीन पर powerhell.exe की खोज करें।

import-csv C:\Temp\Myfile.csv | export-csv C:\Temp\Myfile_New.csv -NoTypeInformation -Encoding UTF8

आशा है कि यह किसी की मदद करता है।


सुविधा के लिए, उस फ़ोल्डर में Shift + राइट-क्लिक करें जहाँ आपका CSV सहेजा गया है और यहाँ Open PowerShell विंडो चुनें , जो कि कमांड को सरल करता है import-csv Myfile.csv | export-csv Myfile_quoted.csv -NoTypeInformation -Encoding UTF8। रिक्त स्थान या अन्य विशेष पात्रों के साथ फ़ाइल नाम के आसपास एकल-उद्धरण का उपयोग करना याद रखें।
वालफ

4

यह मेरे लिए सबसे आसान था: मैंने स्प्रेडशीट को एक्सेस 2010 में आयात किया और इसे वहां से एक सीमांकित पाठ फ़ाइल के रूप में निर्यात किया। मुझे मेरे खेतों के आसपास बोली के निशान दिए। 42k पंक्तियों के लिए एक मिनट से भी कम समय लगता है अब मेरे पास चरण कम हैं।


एकमात्र दोष यह होगा कि यदि फ़ील्ड में एक डबल-उद्धरण है।
access_granted

3

मुझे एक और काम मिला है जिसमें VBA मैक्रो शामिल नहीं है, लेकिन जिसके लिए नोटपैड ++ या इसी तरह के मैक्रो-आधारित टेक्स्ट एडिटर की आवश्यकता होती है।

अपनी फ़ाइल को Tab-seperated text के रूप में निर्यात करें, फिर Notepad ++ के भीतर निर्यात की गई फ़ाइल खोलें। पाठ के साथ 'टैब' वर्ण के सभी उदाहरणों को बदलें, "(अर्थात शाब्दिक रूप से दोहरे-उद्धरण, अल्पविराम, दोहरे-उद्धरण) और फिर पाठ की प्रत्येक पंक्ति को दोहरे-उद्धरण के साथ उपसर्ग और प्रत्यय करने के लिए एक और मैक्रो का उपयोग करें।

थोड़ा हैकरी लेकिन मुझे यह VBA मैक्रो काम करने की तुलना में जल्दी मिल गया।


1
यदि आप नोटपैड ++ में ऐसा करना चाहते हैं, तो आप नियमित अभिव्यक्ति खोज और प्रतिस्थापन का उपयोग करके सबसे अच्छा होगा और फिर आप सभी 3 प्रतिस्थापन ऑपरेशन (लाइन की शुरुआत, टैब और पंक्ति के अंत) एक जगह पर कर सकते हैं
sahmeepee

3

उन कक्षों को हाइलाइट करें जिन्हें आप उद्धरण जोड़ना चाहते हैं। प्रारूप में जाएँ -> कक्ष -> कस्टम कॉपी / टाइप फ़ील्ड में निम्नलिखित चिपकाएँ: \ "@ \" क्लिक करें "ठीक है" खुश रहो तुम यह सब हाथ से नहीं किया।

प्रेषक: http://www.lenashore.com/2012/04/how-to-add-quotes-to-your-cells-in-excel-automatically/


1
यह अल्फा के लिए अच्छी तरह से काम करता है - आपको संख्यात्मक मान वाले कॉलम के लिए \ "# \" की आवश्यकता होगी।
DropHit

\ "@ \" और \ "# \" के बीच यह काम करता है। लेकिन मुझे अभी भी संख्यात्मक कॉलम के लिए नोटपैड ++ में हेडर को संपादित करना है, और फिर सभी "" "के साथ" बदलें। क्या मुसीबत है।
गैरी

कोशिश नहीं की है .. लेकिन अगर आप एक सीएसवी बना रहे हैं तो क्या आप सिर्फ कॉलम को टेक्स्ट में बदल सकते हैं और \ "@ \" का उपयोग कर सकते हैं
स्टीव कोलमैन

2
  1. उन कक्षों को हाइलाइट करें जिन्हें आप उद्धरण जोड़ना चाहते हैं।
  2. राइट क्लिक करें और पर जाएँ: स्वरूप कक्ष → टैब: संख्या → श्रेणी: कस्टम
  3. निम्न को टाइप फ़ील्ड में पेस्ट करें: "''"@"''"(नीचे विवरण देखें)
  4. "ठीक है" पर क्लिक करें
  5. नोटपैड (या समकक्ष) के साथ .csv फ़ाइल खोलें
  6. सभी ' '(दोहराए गए एकल उद्धरण) को "(दोहरे उद्धरण) से बदलें
  7. सबको बदली करें ;
  8. संशोधित .csv फ़ाइल सहेजें

1

यदि आप प्रत्येक पंक्ति की शुरुआत में उद्धरण जोड़ने के लिए नोटपैड ++ का उपयोग करते हैं, तो बस निर्यात की गई सीएसवी फ़ाइल खोलें, अपना कर्सर 1 पंक्ति, 1 कॉलम पर रखें, फिर मेनू संपादित करें / कॉलम संपादक ... , फ़ील्ड में ' पाठ सम्मिलित करें ' पर क्लिक करें, दर्ज करें " , फिर प्रत्येक पंक्ति की शुरुआत में एक उद्धरण होगा, फिर आप सभी टैब को खोजने / बदलने के लिए नियमित अभिव्यक्ति का उपयोग कर सकते हैं।


0

विंडोज उपयोगकर्ताओं के लिए

  1. CSV के रूप में "एक्सेल फ़ाइल के रूप में सहेजें"
  2. Mircrosoft वर्क्स स्प्रेडशीट के साथ ओपन सेव फ़ाइल
  3. CSV के रूप में "स्प्रेडशीट" के रूप में सहेजें
  4. सभी गैर-संख्यात्मक क्षेत्र अब उनके आसपास हैं

ध्यान दें कि यह वही कीबोर्ड उद्धरण नहीं है जिसमें आगे और पीछे की विविधता हो।
इसलिए यदि CSV का उपयोग मैसैकल टेबल में लोड करने के लिए, एनक्लोज्ड पैरामीटर में कट और पेस्ट करें अन्यथा आपको आश्चर्य होगा कि आपको संदेश क्यों मिला#1083 - Field separator argument is not what is expected


3
Mircrosoft वर्क्स <-? क्या अापको उस बारे में पूर्ण विशवास है?
निक्सदा

0

मैंने एक्सेल में तीन कॉलम लेने और चौथे कॉलम में स्ट्रिंग बनाने के लिए नीचे दिए गए दृष्टिकोण का उपयोग किया।

=CHAR(34)&A2&CHAR(34)&","&CHAR(34)&B2&CHAR(34)&","&CHAR(34)&C2&CHAR(34)&""

"''"@"''"दृष्टिकोण के साथ मेरा मुद्दा मेरे डेटा का दूसरा स्तंभ है एक संख्या एक "''"@"''"दृष्टिकोण था जिसमें संख्याओं के साथ कुछ भी नहीं था। कभी-कभी दूसरा कॉलम खाली होता है लेकिन मुझे यह सुनिश्चित करने की आवश्यकता होती है कि इसे अंतिम टेक्स्ट फ़ाइल में दर्शाया गया था।


0

एक और तरीका है यदि आपके पास एमएस एक्सेस है (मेरे पास 2007 है) फ़ाइल आयात करें तो इसे पाठ फ़ाइल के रूप में निर्यात करें। फिर .txt को .csv में बदलें। ध्यान दें कि सभी संख्या क्षेत्रों में इसके आसपास दोहरे उद्धरण चिह्नों की आवश्यकता नहीं होगी, इसलिए यदि आपको संख्याओं के आसपास भी दोहरे उद्धरण चिह्नों की आवश्यकता है, तो Access में फ़ील्ड को संख्या फ़ील्ड से पाठ फ़ील्ड में परिवर्तित करें।


0

निर्यात किए गए अल्पविराम को अलग और उद्धृत स्ट्रिंग केवल एक्सेल 2016 और नोटपैड के साथ किया जा सकता है, डेटा की एक प्रति, एक सूत्र, एक निर्यात, एक फ़ाइल गुण परिवर्तन, नोटपैड में एक प्रतिस्थापन, निर्यात की गई फ़ाइल और सफाई को सहेजते हुए। प्रत्येक एक सरल कदम है। विस्तार से:

  1. मूल और बैकअप के रूप में संरक्षित करने के लिए एक नई इंटरमीडिएट शीट में निर्यात किए जाने वाले कॉलम को कॉपी करें, नई शीट को बाद में स्प्रेडशीट छोड़ने के लिए हटा दिया गया था।

  2. अन्यथा नहीं होने वाला वर्ण (अक्षर) कहें, स्तंभ के प्रत्येक छोर पर '#' या ';-)' कहें =concat("#",trim(A1),"#"), सूत्र A के सूत्र के साथ , दूसरे स्तंभ की सभी पंक्तियों पर सूत्र लगाते हैं।

    • आसन्न कॉलम एक ही समय में किया जा सकता है लेकिन उन्हें स्ट्रिंग के रूप में पढ़ने से बचने के लिए संख्याओं को उद्धृत न करें।
    • ट्रिम किसी भी अनुगामी रिक्त स्थान से बचती है जो अकुशल निर्यात व्यवहार को ट्रिगर कर सकती है।
    • स्ट्रिंग्स में एक "" नहीं होना चाहिए जो आयात को खराब कर सकता है।
  3. फार्मूला न ले जाने के लिए '123' पद्धति का उपयोग करके नए कॉलम (क) को वापस ए ... पर कॉपी करें।

  4. शीट को CSV फ़ाइल के रूप में निर्यात करें, जिसमें संख्याओं सहित फ़ील्ड्स के बीच अल्पविराम लगाया जाए।

  5. File.csv गुणों को बदलें ताकि इसे नोटपैड के साथ खोला जा सके।

  6. नोटपैड का उपयोग मनमाने चरित्र (नों) को '' '' के साथ बदलने के लिए करें।

  7. हालांकि यह "मनमाना चरित्र के रूप में" का उपयोग करने के लिए समझदार होगा, इसे एक अलग सेल में डालना होगा, '$ A $ 50', और फिर जो निर्यात पर दिखाई देता है वह "" "" है, जाहिर है एक और असुविधाजनक ट्रिगर।

  8. नोटपैड में फ़ाइल को सहेजा जाना चाहिए, * आयात होने के लिए एक .txt फ़ाइल और मध्यवर्ती * .csv हटा दिया गया।

  9. अतिरिक्त स्प्रेडशीट शीट मिशन की सफाई के साथ पूरा किया।

शायद एक्सेस एक्सपोर्ट टूल एक दिन एक्सेल में एम्बेड किया जा सकता है। उन कार्यक्रमों के बीच एक अधिक सामान्य दृष्टिकोण जो कट और पेस्ट का उपयोग करते हैं, उनके पास यह होगा कि पेस्ट विकल्प में आउटपुट संरचना की व्याख्या करने और सीमांकक प्रदान करने के तरीकों का एक विकल्प शामिल है।


0

माइकल का 21 अगस्त 2014 का जवाब वास्तव में मददगार है। हालाँकि, मुझे एक अतिरिक्त कदम या दो प्रदर्शन करने थे:

  1. नोटपैड (या समकक्ष) के साथ .csv फ़ाइल खोलें
  2. सभी '' (दोहराए गए एकल उद्धरण) को "(दोहरे उद्धरण) से बदलें
  3. सबको बदली करें ; (एक्सेल के जर्मन संस्करण में सीमांकक के रूप में इस्तेमाल किया),
  4. संशोधित .csv फ़ाइल सहेजें

पदावनति के लिए कोई स्पष्टीकरण नहीं? पाठ्यक्रम के लिए बराबर है, लेकिन दूसरों से कैसे सीखने की उम्मीद है? आप यह स्पष्ट सोच सकते हैं कि क्या गलत है, मिस्टर डाउवोटर, लेकिन यह सभी के लिए स्पष्ट नहीं हो सकता है। हम यहां एक समुदाय बनाने की कोशिश कर रहे हैं, और आप मदद नहीं कर रहे हैं।
मावग

-1

यह मेरी रेसिपी है। मुझे ऐसा करने से नफरत है लेकिन मेरे पास कोई बेहतर तरीका नहीं था। मेरे मामले में, मुझे किसी भी क्षेत्र के आसपास उद्धरण नहीं मिल रहे हैं। मुझे UTF-8 एन्कोडिंग का उपयोग करने की भी आवश्यकता थी और; टैब के बजाय, इसलिए मैंने यही किया।

ध्यान दें: एकल उद्धरण और इतने पर संलग्न डबल कोट्स लगाने की ilegibility के कारण, मैंने कीस्ट्रोक्स और शाब्दिक वर्ण और स्ट्रिंग्स दोनों को इंगित करने के लिए जानबूझकर "कीबोर्ड फ़ॉर्मेटिंग" का उपयोग किया है।

  1. अपने एक्सेल स्प्रेडशीट में किसी भी अन्य से पहले एक नया कॉलम डालें (1 कॉलम के शीर्षक पर क्लिक करें, पूरा कॉलम चयनित हो जाता है, राइट क्लिक करें, "इन्सर्ट" चुनें)।
  2. नए कॉलम से रिक्त कक्षों की संपूर्ण श्रेणी का चयन करें (वे डिफ़ॉल्ट रूप से चुने गए हैं)। सूत्र फ़ील्ड पर, आप जो चाहें डालें: उदाहरण के लिए xxx,। पूरे कॉलम को एक ही मान से भरने के लिए CTRL+ दबाएँ enter
  3. फ़ाइल को यूनिकोड टेक्स्ट (* .txt) के रूप में सहेजें।
  4. नोटपैड ++ में फ़ाइल खोलें।
  5. खोज / बदलें खोलने के लिए CTRL+ दबाएँ f
  6. टैब बदलने के लिए जाओ।
  7. "खोज मोड" में "विस्तारित (\ n, \ r, \ t, \ 0, \ x ...)" का चयन करें।
  8. "खोज" फ़ील्ड में, xxxप्लस tabकीस्ट्रोके दर्ज करें ।
  9. "बदलें" फ़ील्ड में, दर्ज करें "(एक डबल उद्धरण)।
  10. प्रेस रिप्लेस ऑल।
  11. "खोज" फ़ील्ड में, एक tabकीस्ट्रोक डालें ।
  12. "बदलें" एक में, दर्ज करें ";"(डबल उद्धरण, अर्धविराम, डबल उद्धरण)।
  13. प्रेस रिप्लेस ऑल।
  14. आप लगभग कर चुके हैं। अंतिम डबल उद्धरण के लिए, "बदलें" \rफ़ील्ड में दर्ज करें और "\r""बदलें" में डबल उद्धरण, बैकस्लैश, डबल उद्धरण)। प्रेस रिप्लेस ऑल।
  15. जब तक आप चीनी चरित्र का उपयोग नहीं कर रहे हैं, आदि, आप एन्कोडिंग को यूटीएफ -8 में बदल सकते हैं और फ़ाइल को सुरक्षित रूप से सहेज सकते हैं।

-1

मैं इस मुद्दे में कई बार भाग चुका हूं। यहाँ सबसे सरल समाधान है जो मैं लेकर आया हूँ।

  1. फ़ाइल को एक्सेल के रूप में सहेजें
  2. एक्सेल को एक्सेस टेबल में इम्पोर्ट करें
  3. एक्सेस से टेक्स्ट फ़ाइल में तालिका निर्यात करें।

प्रवेश आपको अल्पविराम और योग्यता वाले पाठ फ़ील्ड को उद्धरण के साथ निर्यात करने की अनुमति देगा। एक्सपोर्ट विजार्ड में, आप अपने इच्छित स्ट्रिमिटर या कैरेक्टर को निर्दिष्ट कर सकते हैं।

आपको किसी विशेष क्रम में फ़ील्ड को व्यवस्थित करने या एक्सेस द्वारा जोड़े गए ऑटो-आईडी फ़ील्ड को छिपाने के लिए एक एक्सेस क्वेरी बनाने की आवश्यकता हो सकती है।

इसके अलावा ... एक बार CSV को निर्यात करने के बाद, उसे फिर से एक्सेल में न खोलें। यदि आप परिणामों को देखना चाहते हैं, तो इसे नोटपैड में खोलें। एक्सेल में एक सीएसवी के डेटा के साथ गड़बड़ करने की प्रवृत्ति होती है .... मुझे लगता है कि अगर मैं सही तरीके से याद करूं तो यह प्रमुख शून्य के साथ गद्देदार था।


यह user326114 के उत्तर में जानकारी की नकल करता प्रतीत होता है।
फिक्सर 1234

-1

यहां एक्सेल स्प्रेडशीट लेने के लिए ओपनऑफिस ऐप का उपयोग किया गया है और अपने टेक्स्ट फ़ील्ड के आसपास उद्धरण चिह्नों के साथ एक टेक्स्ट (सीएसवी) फ़ाइल बनाई गई है।

OpenOffice के साथ एक्सेल फाइल खोलें, फिर इन चरणों का पालन करें:

फ़ाइल> इस रूप में सहेजें

आपके द्वारा बनाई जाने वाली फ़ाइल के लिए एक नया नाम प्रदान करें

फ़िलिपाइप के लिए, "टेस्ट CSV (.csv)" चुनें

चेकबॉक्स चालू करें "फ़िल्टर सेटिंग संपादित करें"

"सहेजें" पर क्लिक करें

"वर्तमान प्रारूप रखें" चुनें

फ़ील्ड सीमांकक अल्पविराम होना चाहिए:

टेक्स्ट सीमांकक एक उद्धरण चिह्न होना चाहिए: "

"सभी पाठ कक्षों को उद्धरण दें" बॉक्स चेक करें

ओके पर क्लिक करें"

यह मेरे लिए काम किया!

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.