列表框到Excel

本文关键字:Excel 列表 | 更新日期: 2023-09-27 18:08:15

好的,我有一个类customer,我用它来处理数据,然后添加到列表框中,如下所示:

   //Submit data from current form         
   customer aCustomer = new customer(comboBox1.Text, textBox1.Text, ChannelSelecBox.Text,
     PurchaserTextBox.Text, NameTextBox.Text, emailTextBox.Text, AddressTextBox.Text, StateBox.Text,
     PayMethodDropDown.Text, Prod1Num.Value.ToString(), Prod2Num.Value.ToString(), 
    Prod3Num.Value.ToString(), Prod4Num.Value.ToString(), Prod5Num.Value.ToString(), 
    Prod6Num.Value.ToString(), SubTData.Text, DiscountTextBox.Text, TaxData.Text, CommentTextBox.Text, 
    ShipData.Text, TotalData.Text);
           // Add aCustomer to ListBox
           Orders.Items.Add(aCustomer);

我有一个字符串重写,以便列表框只显示购买者和日期。现在我想把所有的订单输入到列表框中,把大部分的数据放到一个excel电子表格中,每个都放到它自己的列中。我怎么能这么做?

如果您需要更多信息或查看我的代码,请告诉我。

列表框到Excel

尝试以下操作;

object oOpt = System.Reflection.Missing.Value; //for optional arguments
Excel.Application oXL = new Excel.Application();
Excel.Workbooks oWBs = oXL.Workbooks;
Excel.Workbook oWB = oWBs.Add(Excel.XlWBATemplate.xlWBATWorksheet);
Excel.Worksheet oSheet = (Excel.Worksheet)oWB.ActiveSheet;
//outputRows is a List<List<object>>
int numberOfRows = outputRows.Count;
int numberOfColumns = outputRows.Max(list => list.Count);
Excel.Range oRng = 
    oSheet.get_Range("A1", oOpt)
        .get_Resize(numberOfRows, numberOfColumns);
object[,] outputArray = new object[numberOfRows, numberOfColumns];
for (int row = 0; row < numberOfRows; row++)
{
    for (int col = 0; col < outputRows[row].Count; col++)
    {
        outputArray[row, col] = outputRows[row][col];
    }
}
oRng.set_Value(oOpt, outputArray);
oXL.Visible = true;

更多详细信息请访问http://csharp.net-informations.com/excel/csharp-create-excel.htm

使用CSV作为文件格式,不使用XLS。Excel是个麻烦。尤其是在从XLS读取时。一些不正确的单元格格式,你有时会得到值,但有时没有。即使在同一个档案里。个人经验。