2013-02-02 6 views
5

मैं अपने पहले समय से VB.net से एक्सेल फ़ाइल बनाने की कोशिश कर रहा हूं। मैं पहले से ही Microsoft.Office.Excel संदर्भ, आयात Microsoft.Office.Interop जोड़ावीबीएनईटी के साथ एक्सेल (HRESULT से अपवाद: 0x8002000B (DISP_E_BADINDEX))

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 

    Dim xlApp As Excel.Application 
    Dim xlWorkBook As Excel.Workbook 
    Dim xlWorkSheet As Excel.Worksheet 
    Dim misValue As Object = System.Reflection.Missing.Value 

    xlApp = New Excel.ApplicationClass 
    xlWorkBook = xlApp.Workbooks.Add(misValue) 
    xlWorkSheet = CType(xlWorkBook.Sheets("sheet1"), Excel.Worksheet) 
    xlWorkSheet.Cells(1, 1) = "Something here" 
    xlWorkSheet.SaveAs("D:\vbexcel.xlsx") 

    xlWorkBook.Close() 
    xlApp.Quit() 
    releaseObject(xlApp) 
    releaseObject(xlWorkBook) 
    releaseObject(xlWorkSheet) 

    MsgBox("Excel file created , you can find the file c:\") 

End Sub 

त्रुटि generetad कतार में है:

xlWorkSheet = CType(xlWorkBook.Sheets("sheet1"), Excel.Worksheet) 

    Invalid index. (Exception from HRESULT: 0x8002000B (DISP_E_BADINDEX)) 
+0

निराले ढंग से कुछ पत्रक के नाम से काम जब आप पाठ के नाम का उपयोग की वांछित संख्या तक पहुँचने के लिए है, लेकिन कार्यपत्रक ऐसे नाम हैं जो एक अपवाद फेंक के लिए के रूप में हम ऊपर संकेत कॉल कर सकते हैं सूचकांक का उपयोग करना होगा। – Ruruboy

उत्तर

8

हो सकता है कि एक्सेल के अपने संस्करण बात नहीं करता अंग्रेज़ी। और "शीट" स्थानीय भाषा में एक गंदा शब्द है, यह थोड़े अंग्रेजी में है;) आपका नाम एक संकेत है कि अंग्रेजी डिफ़ॉल्ट भाषा नहीं है। इस तरह दुर्घटनाओं से बचने के नाम के बजाय सूचकांक का उपयोग करें:

xlWorkSheet = CType(xlWorkBook.Sheets(1), Excel.Worksheet) 
+0

एचएचएचएचएचएचएचएचएचएचएचएचएचएचटी आईटी वर्क्स –

2

यह भी हो रहा हो सकता है क्योंकि

Workbook.Worksheets.Count 

शीट का उपयोग करें, कैसे अपने एक्सेल सेटिंग नहीं है पर निर्भर करता है की संख्या से कम है । मेरे लिए यह 3 चादरों से शुरू होता है लेकिन एक सहयोगी के लिए यह 2 शीट्स के साथ शुरू होता है।

तो तुम

Workbook.Worksheets.Add() 

शीट

संबंधित मुद्दे