के छोटे सबसेट की आउटपुट फ़ाइल बनाएं, मेरे पास पाठ के 1.2 मिलियन रिकॉर्ड की एक सीएसवी फ़ाइल है। अल्फान्यूमेरिक फ़ील्ड उद्धरण चिह्नों में लिपटे हैं, दिनांक/समय या संख्यात्मक फ़ील्ड नहीं हैं।बहुत बड़ी सीएसवी पढ़ने के लिए एक्सेल में वीबीए चाहते हैं और सीएसवी
उदाहरण के लिए "फ्रेड", "स्मिथ", 01/07/1967,2, "7, हाई स्ट्रीट", "Anytown", "Anycounty", "LS1 7AA"
मैं क्या चाहता हूँ एक्सेल में कुछ वीबीए लिखें (मेरे लिए उपलब्ध एकमात्र टूल केवल इतना ही कम है कि मैं उपयोग में काफी कुशल हूं) जो रिकॉर्ड द्वारा सीएसवी रिकॉर्ड पढ़ता है, एक चेक करता है (जैसा कि यह अंतिम क्षेत्र पर होता है, पोस्ट कोड) और फिर 1.2 एम रिकॉर्ड के एक छोटे से सबसेट को एक नई आउटपुट फ़ाइल में आउटपुट करता है।
मैं समझता हूँ कि कैसे दो फ़ाइलें खोलने के लिए, रिकॉर्ड पढ़ा, मैं डेटा के साथ क्या है और इसे बाहर लिखने की ज़रूरत क्या कर
(मैं सिर्फ उत्पादन होगा एक उपसर्ग एक अपवाद प्रकार को दर्शाता है इनपुट रिकॉर्ड) मुझे नहीं पता कि वीबीए में सीएसवी को सही तरीके से कैसे पार्स करना है। मैं एक साधारण पाठ स्कैन नहीं कर सकता और अल्पविरामों की खोज करता हूं क्योंकि टेक्स्ट में कभी-कभी कॉमा होता है (इसलिए टेक्स्ट फ़ील्ड्स टेक्स्ट को सीमित क्यों किया जाता है)
क्या कोई शानदार आदेश है जो मुझे जल्दी से डेटा प्राप्त करने देता है मेरे रिकॉर्ड में क्षेत्र?
मैं क्या चाहता हूँ s_work = क्षेत्र है (s_input_record, 5) जहां 5 मेरी सीएसवी में क्षेत्र संख्या ....
बहुत धन्यवाद, सी
मैंने पिछले –
+1 में एक ही चीज़ को पूरा करने के लिए एक समान तकनीक का उपयोग किया है, यह इस तरह के बड़े डेटासेट के लिए सबसे अच्छा समाधान है, मैंने पिछले –
@ फ़ियोनुआला में समेकित डेटा के साथ ऐसा किया है, मैं हूं स्मृति में एक CSV फ़ाइल पढ़ने के लिए अपने उत्तर का उपयोग कर। हालांकि, मुझे 280 चर सीमा का अनुभव हो रहा है जैसा कि मैंने एक प्रश्न में बताया है: http://stackoverflow.com/questions/34230062/excel-vba-reading-csv-file-with-large-multiline-values-using-adodb साथ-साथ-जेट-या-क्या आप इस तरह के व्यवहार का अनुभव करते थे और इस सीमा को दूर करने के बारे में कोई विचार था? – IzCe