मेरे पास एक सूची है और मैं सूची में डेटा को एक Excel कार्यपुस्तिका में सहेजने का प्रयास कर रहा हूं। अपवाद ws.Cells[row,col]
रेखा पर होता है। यहाँ मेरा कोड है:
using Excel = Microsoft.Office.Interop.Excel;
...
Excel.Application xl = new Excel.Application();
xl.Visible = false;
Excel.Workbook wb = (Excel.Workbook)xl.Workbooks.Add(Excel.XlWBATemplate.xlWBATWorksheet);
Excel.Worksheet ws = (Excel.Worksheet)wb.ActiveSheet;
for (int row = 0; row < listView1.Items.Count; row++)
{
ListViewItem item = listView1.Items[row];
for (int col = 0; col < item.SubItems.Count; col++)
{
ws.Cells[row,col] = item.SubItems[col].Text.ToString(); // exception here
//ws.Cells[row,col] = "Test"; // I've tried this too
}
}
अपवाद है:
System.Runtime.InteropServices.COMException (0x800A03EC)
मैंने त्रुटि कोड पर कुछ शोध किया है, लेकिन मैं केवल फ़ाइल को सहेजने की कोशिश कर रहे लोगों के साथ मुद्दों को खोजने में सक्षम हूं। मैं फ़ाइल को सहेजने के बिंदु पर नहीं हूं और मुझे अपवाद मिल रहा है।
2 जवाब
Cells
इंडेक्सर एक-आधारित नहीं शून्य-आधारित है (इसलिए A1
[1, 1]
है)
for (int row = 1; row <= listView1.Items.Count; row++)
...
for (int col = 1; col <= item.SubItems.Count; col++)
एक्सेल सेल 1-बेस इंडेक्सिंग हैं, कोशिश करें:
ws.Cells[row + 1,col + 1] = item.SubItems[col].Text.ToString();
संबंधित सवाल
नए सवाल
c#
C # (उच्चारण "तेज देखें") Microsoft द्वारा विकसित एक उच्च स्तरीय, सांख्यिकीय रूप से टाइप किया हुआ, बहु-प्रतिमान प्रोग्रामिंग भाषा है। C # कोड आमतौर पर Microsoft के .NET परिवार के टूल और रन-टाइम को लक्षित करता है, जिसमें .NET फ्रेमवर्क, .NET कोर और Xamarin अन्य शामिल हैं। C # या C # के औपचारिक विनिर्देश में लिखे गए कोड के बारे में प्रश्नों के लिए इस टैग का उपयोग करें।