मैं एक सीएक्सडीबीजीड से एक्सेल फ़ाइल में डेटा निर्यात कर रहा हूं। मैं फ़ाइल बनाने और इसमें डेटा कॉपी करने में सक्षम हूं, लेकिन मुझे कॉलम स्वरूपण के साथ वास्तविक समस्या है। चूंकि मैं एक डीबी से डेटा खींच रहा हूं, इसलिए मैं स्प्रेडशीट को इस प्रकार को प्रतिबिंबित करना चाहता हूं: NUMBER, VARCHAR2, DATE और इसी तरह। मैं नेत्रहीन एक मैक्रो बनाया, VBA कोड के लिए देखने के लिए चला गया, और डेल्फी परियोजना में यह दोहराया: समय की सबसेमैं एक्सेल कॉलम प्रकार और स्वरूपण कैसे सेट करूं?
sheet.Columns[K+2].NumberFormat := '0,000'; //Number
sheet.Columns[K+2].NumberFormat := '@'; //Text
sheet.Columns[K+2].NumberFormat := 'm/d/yyyy'; //Date
संख्या स्वरूपण काम करता है ठीक है, लेकिन अन्य दो नहीं है। जब मैं जेनरेट की गई फ़ाइल खोलता हूं, तो टेक्स्ट कॉलम "कस्टम" प्रकार के रूप में दिखाई देता है और प्रत्येक सेल "-64" प्रदर्शित करता है। यदि मैं एक सेल को संपादित करने के लिए जाता हूं, तो वास्तव में सही मूल्य वास्तव में होता है। दिनांक एक और मुद्दा है: डीबी का प्रारूप डीडी/एमएम/yyyy है और यदि मैं इसे Excel के रूप में फ़ीड करता हूं, तो यह सब गड़बड़ हो जाता है। मैंने सही प्रारूप स्थापित करने का प्रयास किया, लेकिन फिर एक्सेल इसे पहचान नहीं पाया।
कोई सुराग?
मैं कॉलम चौड़ाई भी सेट कर रहा हूं। यह बेकार ढंग से काम करता है।
मुझे लगता है कि जब आप सीएक्सडीबीजीड कहते हैं तो आप डेवलपर एक्सप्रेस घटकों का जिक्र कर रहे हैं। यदि हां, तो क्या आप डेवलपर एक्सप्रेस द्वारा प्रदान की गई ExportGridToExcel() प्रक्रिया का उपयोग कर Excel में निर्यात कर रहे हैं? –
मैंने कोशिश की है लेकिन इसमें डेटा प्रकार सेट करने में समस्याएं हैं। यही कारण है कि मैं चीजों को मैन्युअल रूप से करना चाहता हूं – asg2012
मैं निर्यात प्रकारों से संबंधित किसी भी समस्या या निर्यात पर स्वरूपण के बिना ExportGridToExcel() कई स्थानों का उपयोग करता हूं। अपने कोड को देखे बिना यह पता लगाना मुश्किल है कि यह आपके लिए क्यों काम नहीं करता है। अपना खुद का निर्यात लिखने की परेशानी के बजाय, यदि आप आपकी मदद कर सकते हैं तो मैं डेवलपर एक्सप्रेस समर्थन साइट से पूछूंगा। उनका समर्थन बहुत अच्छा है और आमतौर पर वे आपको समाधान के साथ बहुत जल्दी मदद कर सकते हैं। –