एक्सेल CSV संख्याओं के उद्धृत स्ट्रिंग्स को सांख्यिक मान के रूप में आयात करता है, तार नहीं


11

मुझे एक वेब एप्लिकेशन मिला है जो CSV फ़ाइल में अपना डेटा निर्यात कर रहा है। यहाँ प्रश्न में CSV फ़ाइल की एक उदाहरण पंक्ति है:

28,"65154",02/21/2013 00:00,"false","0316295","8316012,8315844","MALE"

चूंकि मैं एक छवि पोस्ट नहीं कर सकता, इसलिए मुझे एक्सेल में परिणामों की व्याख्या करनी होगी। "0316295" फ़ील्ड एक संख्या में बदल जाती है और अग्रणी 0 चला जाता है। "8316012,8315844" को एक एकल संख्या के रूप में व्याख्या की जाती है: 83,160,128,315,844। यही है, सबसे स्पष्ट रूप से, इच्छित परिणाम नहीं है।

मैंने देखा है कि लोग ऐसे मामलों के लिए एक अग्रणी एकल उद्धरण की सिफारिश करते हैं, लेकिन यह वास्तव में या तो काम नहीं करता है।

28,"65154",02/21/2013 00:00,"false","'0316295","'8316012,8315844","MALE"

एक्सेल में सेल में हर समय एकल उद्धरण दिखाई देता है, हालांकि अगर मैं एक अग्रणी एकल उद्धरण के साथ एक संख्या दर्ज करता हूं, तो यह केवल इच्छित स्ट्रिंग दिखाता है न कि स्ट्रिंग के साथ एकल उद्धरण।

आयात करना टाइपिंग के समान नहीं है, ऐसा लगता है।

किसी को भी यहाँ एक समाधान है?


क्या आप लिब्रे ऑफिस या उस ilk के उपयोग से इसे आयात करने में सक्षम हैं? मैंने अभी आयात किया है और प्राप्त किया है: 28 65154 02/21/2013 00:00 झूठा 0316295 8316012,8315844 मेल (यदि आप पढ़ सकते हैं ...?)
FreudianSlip

यह प्रश्न समान है और कुछ अच्छे समाधान पेश करता है: superuser.com/questions/234997/…
ब्रैड पैटन

@FreudianSlip नहीं, हम कुछ 3 पार्टी समाधान का उपयोग नहीं कर सकते। उपयोगकर्ता "डाउनलोड सीएसवी" बटन पर क्लिक करते हैं और फ़ाइल एक्सेल में खुलती है। यही वह वातावरण है जिससे हम निपट रहे हैं। वास्तव में इसे जटिल नहीं कर सकते।
माइकल ओरील

@ ब्रैड मैंने उस पोस्ट को पहले समाधान की तलाश में पढ़ा। यहीं से मुझे एकल उद्धरण विकल्प मिला, जो मुझे वास्तव में पसंद नहीं है, क्योंकि एक्सेल सीएसवी से आयात किए जाने पर ही सेल में उद्धरण दिखाता है (भले ही आप इसे अपने आप में एक ही प्रकार लिखते हों)।
माइकल ओरील

तो क्या आप कम से कम वेब ऐप को नियंत्रित करते हैं? आप उपयोगकर्ताओं से पारदर्शी तरीके से समाधान कैसे लागू करेंगे? मैंने अपना उत्तर अपडेट कर दिया है ताकि यह ठीक से कॉमा के साथ मूल्यों को संभाल लेगा
एलेक्स पी।

जवाबों:


9

यह काम करना चाहिए

28,"65154",02/21/2013 00:00,"false",="0316295","=""8316012,8315844""","MALE"

नहीं, यह मान दो अंकों के साथ है। हमें = "1234567 बिना किसी बंद भाव के मिलता है। क्या यह सरल संख्या के लिए काम करता है, हालांकि।
माइकल ओरील

1
यदि आप उस वेब एप्लिकेशन को नियंत्रित करते हैं जिसे आप SYLK en.wikipedia.org/wiki/SYmbolic_LinK_(SYLK) प्रारूप में निर्यात को लागू कर सकते हैं । यह डेटा प्रतिनिधित्व का बेहतर नियंत्रण है। यदि नहीं - तो आप आसानी से एक कनवर्टर स्क्रिप्ट बना सकते हैं
एलेक्स पी।

2
उत्तर को अद्यतन किया ताकि यह ठीक से कॉमा के साथ मूल्यों को संभाल लेगा
एलेक्स पी।

कि अल्पविराम से अलग मूल्यों को ठीक से संभाला। धन्यवाद।
माइकल ओरील

धन्यवाद। इस समाधान ने हेक्सिडेसिमल संख्याओं के आयात के साथ एक समस्या को हल किया। एक्सेल 00E30 (0 * 10 ^ 3) के साथ प्रतिस्थापित करता है और इसे विज्ञान संकेतन (0.00E + 00) के रूप में प्रदर्शित करता है। यह वास्तव में "00e3"बिना के लिए भी यही करता है =। लेकिन ="00e3"पूरी तरह से काम करता है। (एक्सेल 2010 के साथ एक सीएसवी खोलना)
एमपाग

12

अग्रणी शून्य (एस) को रखने के लिए, आप पाठ आयात विज़ार्ड में पाठ के लिए उस विशिष्ट कॉलम का प्रारूप सेट कर सकते हैं।

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

    यहाँ छवि विवरण दर्ज करें

  6. हिट समाप्त करें और फिर अपने डेटा के लिए एक उपयुक्त स्थान का चयन करें। नमूना परिणाम:

    यहाँ छवि विवरण दर्ज करें

संपादित करें : एक और तरीका है ; वेब एप निर्यात को अल्पविराम-सीमांकित .TXT फ़ाइल के बजाय .CSV (या इसे सहेजने के बाद निर्यात की गई फ़ाइल का फ़ाइल एक्सटेंशन बदलना) है। यह Excel को फ़ाइल खोलने पर आयात विज़ार्ड के माध्यम से जाने के लिए मजबूर करता है। एक अतिरिक्त लाभ के रूप में, यह उन अवसरों को कम करता है जो उपयोगकर्ता आपके मूल कच्चे डेटा के साथ संशोधित या छेड़छाड़ करते हैं।


1
हाँ, यह निश्चित रूप से सच है। यह अंत उपयोगकर्ता के लिए वास्तव में सुविधाजनक नहीं है जब, तुलना करके, उन्हें बस इतना करना है कि हमारे वेब ऐप पर सीएसवी जनरेटर के लिंक पर क्लिक करें और एक्सेल इसे स्वचालित रूप से लोड करता है - उपरोक्त समस्याओं के साथ। CSV फाइलें एक्सेल में खोलने के लिए सेट हैं, और एक्सेल उस समय कोई विकल्प नहीं देता है। यह सिर्फ उन्हें लोड करता है। हालांकि, मैं आपको इसकी ओर इशारा करता हूं।
माइकल ओरील

1
एक और तरीका है, लेकिन मुझे नहीं पता कि आपके मामले में यह संभव है: वेब ऐप निर्यात के .TXTबजाय अल्पविराम-सीमांकित किया गया है .CSV(या निर्यात फ़ाइल के फ़ाइल एक्सटेंशन को बदलें)। इस तरह के "फोर्स" उपयोगकर्ता फ़ाइल खोलने पर आयात विज़ार्ड से गुजरते हैं।
एलिसा

यह बहुत अच्छी बात है। यह बात बताने के लिए धन्यवाद। यह भविष्य में उपयोगी हो सकता है।
माइकल ओरील

3

Excel पाठ के रूप में टैब वर्ण से शुरू होने वाले संख्यात्मक मानों को मानता है।

<tabchar>000000100000200000,ABC,DEF

के रूप में दिखाई देगा:

000000100000200000|ABC|DEF

| कोशिका सीमा (चित्रण प्रयोजन के लिए) है। इसलिए, उदाहरण के लिए, यदि आपका सिस्टम utf-8 charset का उपयोग करके CSV फ़ाइल बनाता है, तो आप &#x0009;पाठ को व्याख्या करने के लिए एक्सेल को बाध्य करने के लिए अपने संख्यात्मक मान से पहले (हेक्स में टैब चार) जोड़ सकते हैं ।


हेक्स प्रतिनिधित्व में अर्ध कोलन से पहले अंतरिक्ष निकालें। मुझे नहीं पता कि उत्तर में हेक्स टैब चरित्र से कैसे बचा जाए, इसलिए मैंने जानबूझकर गलत टाइप किया है।
मैडेएडेक्सटर

1
मैंने पलायन किया। और मैंने कुछ नया सीखा, धन्यवाद। मुझे इसे काम के लिए अपने पसंदीदा विषय में जोड़ना है :)
nixda

2

जब तक CSV कॉलम इस प्रारूप में नहीं होगा, तब तक Excel CSV फ़ील्ड के प्रारूप का स्वतः पता लगा लेगा:

"=""Data Here"""

यह Google शीट के लिए भी काम करता है


0

आपको एक्सेल में "डेटा -> गेट एक्सटर्नल डेटा -> इम्पोर्ट टेक्स्ट फ्रॉम फाइल" एक्सेल को टेक्स्ट के रूप में प्रदर्शित करने के लिए उपयोग करना होगा। यह पाठ आयात विज़ार्ड @Kaze का उल्लेख है।

इनपुट से पाठ के रूप में संख्याओं को प्रदर्शित करने के लिए एक्सेल को मजबूर करने का एकमात्र तरीका, उपयोगकर्ता को कुछ भी करने के बिना, एक एक्सेल फ़ाइल को आउटपुट करके और उसमें "कस्टम नंबर प्रारूप" निर्दिष्ट करना है। मैं इसके लिए एक XLS एक्सपोर्ट लाइब्रेरी का उपयोग करने की सलाह देता हूं, क्योंकि यह CSV फ़ाइल में कॉन्फिग टेक्स्ट की एक लाइन जोड़ने जितना आसान नहीं है।


0

उन मूल्यों के लिए स्वच्छ कार्य का प्रयास करें जो गड़बड़ हैं। उदाहरण के लिए = स्वच्छ ("12345678901234567890")। यह संख्याओं, तिथियों, समयों आदि के लिए मेरे लिए काम करता है। मैं सावधान करता हूँ कि चूंकि यह इस फ़ंक्शन के उद्देश्य से नहीं है, इसलिए यह नए संस्करणों के साथ काम करना बंद कर सकता है, आदि।

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