none
Test su excel che ha creato problemi permanenti ..... RRS feed

  • Domanda

  • Salve a tutti.

    Ho usato questo codice per testare la creazione di un foglio excel e scriverci dentro.

    //Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();


                   Excel.Application xlApp;
                   Excel.Workbook xlWorkBook;
                   Excel.Worksheet xlWorkSheet;
                   Excel.Range formatRange;
                   object misValue = System.Reflection.Missing.Value;
                   xlApp = new Excel.Application();
                   xlWorkBook = xlApp.Workbooks.Add(misValue);
                   xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);

               // comincio a formattare le celle
               formatRange = xlWorkSheet.get_Range("a1");
               formatRange.EntireRow.Font.Bold = true;
               xlWorkSheet.Cells[1, 5] = "Bold";
               xlWorkSheet.Cells[1, 5].Font.Name = "Century Gothic";
               xlWorkSheet.Cells[1, 5].Font.Size = 18;

               for (int u = 3; u < 7; u++)
               {
                   Excel.Range formatRange1 = xlWorkSheet.UsedRange;
                   Excel.Range cell = formatRange1.Cells[u, u];
                   Excel.Borders border = cell.Borders;
                   border.LineStyle = Excel.XlLineStyle.xlContinuous;
                   border.Weight = 2d;
               }

               formatRange = xlWorkSheet.get_Range("b2", "e9");
               formatRange.BorderAround(Excel.XlLineStyle.xlContinuous,
               Excel.XlBorderWeight.xlMedium, Excel.XlColorIndex.xlColorIndexAutomatic,
               Excel.XlColorIndex.xlColorIndexAutomatic);


               xlWorkSheet.get_Range("g2", "m2").Merge(true);

               xlWorkSheet.Cells[1, 1] = "http://csharp.net-informations.com";
                   xlWorkBook.SaveAs("csharp-Excel.xls",
                   Excel.XlFileFormat.xlWorkbookNormal, misValue, misValue, misValue, misValue,
                   Excel.XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
                   xlWorkBook.Close(true, misValue, misValue);
                   xlApp.Quit();

    Sembra funzionare, ma ......

    ogni volta che accendo il computer in automatico si aprono da una a "n" istanze di excel con fogli vuoti o con quello che ho scritto con questo codice !!!

    Non so cosa sia successo. E' come se in esecuzione automatica o da qualche altra parte ci sia un processo che apre excel.

    Tre domande:

    1) come elimino questo casino ...

    2) cosa in questo codice ha creato questo macello ?

    3) C'e' un modo più semplice ed indolore per creare un foglio excel e scriverci dentro ?

    Grazie

    giovedì 25 gennaio 2018 17:19

Tutte le risposte