मैं एक साधारण सी # एप्लिकेशन कर रहा हूं जो मौजूदा एक्सेल 2003 टेम्पलेट (xlt) को संपादित करना और एक नई * .xls फ़ाइल में सहेजना है। यह है की तरह:एक्सेल 2003 फ़ाइल सहेजें
Microsoft.Office.Interop.Excel._Application app = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel._Workbook workbook = app.Workbooks.Open("\\my_template.xlt");
Microsoft.Office.Interop.Excel._Worksheet worksheet = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Sheets[0];
तो मैं कुछ कोशिकाएं होती हैं जो फ़ाइल अंदर विभिन्न सूत्रों में उपयोग किया जाता है को संशोधित करने और एक नई फ़ाइल में टेम्पलेट सहेजें:
workbook.SaveAs("newfile.xls", Microsoft.Office.Interop.Excel.XlFileFormat.xlWorkbookNormal);
workbook.Close(true, misValue, misValue);
app.Quit();
worksheet = null;
workbook = null;
app = null;
तो समस्या यह है कि जब नई फ़ाइल सफलतापूर्वक सहेजा गया है मैं इसे खोलता हूं और देखता हूं कि सूत्रों के परिणाम, जो मैंने संपादित किए गए कक्षों का उपयोग कर रहे हैं, "#NAME" और इसी तरह हैं। जब मैं फ़ाइल को फिर से खोलता हूं - सबकुछ ठीक हो जाता है। ऐसा क्यों होता है?
शायद मैं गलत तरीके से फ़ाइल सहेज रहा हूं और इसलिए मुझे इसके पहले खुलने के दौरान त्रुटियां दिखाई दे रही हैं? यह समस्या केवल 2003 कार्यालय के लिए वास्तविक है ... जैसा कि मैंने स्वीकार किया है।
कौन सा इंटरॉप विधानसभा संस्करण आप संदर्भित कर रहे हैं? –
आप कोशिकाओं को कैसे संपादित कर रहे हैं? – oberfreak