C#list配列をxlsテーブルに保存

3007 ワード

 
  
            List listName=new List();
            listName.Add("  ");
            listName.Add("  ID");
            listName.Add("X ");
            listName.Add("Y ");
            listName.Add("Z ");
            listName.Add("  ");
            listName.Add("  ");
            listName.Add("  ");
            // listView1       excel   
            object misValue = System.Reflection.Missing.Value;
            Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
            Workbook xlWorkBook = xlApp.Workbooks.Add(misValue);
            Worksheet xlWorkSheet = (Worksheet)xlWorkBook.Worksheets.get_Item(1);
            for (int i = 0; i < listName.Count; i++)
            {
                xlWorkSheet.Cells[1, i + 1] = listName[i]; //write the column name
            }
            for (int i = 0; i < listView1.Items.Count; i++)
            {
                listView1.Items[i].Selected = true;//        
                xlWorkSheet.Cells[i + 2, 1] = listView1.SelectedItems[0].SubItems[0].Text.ToString();// i    
                xlWorkSheet.Cells[i + 2, 2] = listView1.SelectedItems[0].SubItems[1].Text.ToString();// i    
                xlWorkSheet.Cells[i + 2, 3] = listView1.SelectedItems[0].SubItems[2].Text.ToString();
                xlWorkSheet.Cells[i + 2, 4] = listView1.SelectedItems[0].SubItems[3].Text.ToString();
                xlWorkSheet.Cells[i + 2, 5] = listView1.SelectedItems[0].SubItems[4].Text.ToString();
                xlWorkSheet.Cells[i + 2, 6] = listView1.SelectedItems[0].SubItems[5].Text.ToString();
                xlWorkSheet.Cells[i + 2, 7] = listView1.SelectedItems[0].SubItems[6].Text.ToString();
                xlWorkSheet.Cells[i + 2, 8] = listView1.SelectedItems[0].SubItems[7].Text.ToString();
		......
            }
            try
            {
                SaveFileDialog sfd = new SaveFileDialog();
                sfd.InitialDirectory = Directory.GetCurrentDirectory() + "\\data\\";
                sfd.Filter = "Excel  |*.xls";
                sfd.ShowDialog();
                string path = sfd.FileName;
                xlWorkBook.SaveAs(path, XlFileFormat.xlExcel7, misValue, misValue, misValue, misValue, XlSaveAsAccessMode.xlExclusive, misValue, misValue, misValue, misValue, misValue);
                xlWorkBook.Close(true, misValue, misValue);
                xlApp.Quit();
                MessageBox.Show("    !");
            }
            catch (Exception)
            { }