当前位置:编程学习 > C#/ASP.NET >>

c#导入excel

c#导入excel,然后生成一列,这一列让从1到行末,如何实现呀?
样式如下:
序号
1
2
3
……
127 --------------------编程问答-------------------- 多少行没有确定吗?
你直接给他确定个行数不就行了,反正这个文件是你自己生成的 --------------------编程问答--------------------
引用楼主 balion49327932 的回复:
c#导入excel,然后生成一列,这一列让从1到行末,如何实现呀?
样式如下:
序号
1
2
3
……
127

没太明白…… --------------------编程问答-------------------- for循环i++啊! --------------------编程问答-------------------- 是Sql数据库中的数据导入到Excel中吗? --------------------编程问答-------------------- 有没有什么函数直接可以从excel中读取的?
新手小白求指导 --------------------编程问答-------------------- 读excel可以当做数据库来操作的,只不过连接串不同。 --------------------编程问答--------------------

private DataSet importExcelToDataSet(string FilePath)
{
   string strConn;
   strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + FilePath + ";Extended Properties=Excel 8.0;";
   OleDbConnection conn = new OleDbConnection(strConn);
   OleDbDataAdapter myCommand = new OleDbDataAdapter("SELECT * FROM [Sheet1$]",strConn);
   DataSet myDataSet = new DataSet();
   try
   {
    myCommand.Fill(myDataSet);
   }
   catch(Exception ex)
   {
    throw new InvalidFormatException("该Excel文件的工作表的名字不正确," + ex.Message);
   }
   return myDataSet;
}



贴点代码,仅做参考。适当修改哦。 --------------------编程问答-------------------- for循环i++
IF 值=DBNULL.VAULE 
 BREAKE; --------------------编程问答-------------------- for循环i++
IF 值==DBNULL.VAULE  
 BREAKE; --------------------编程问答-------------------- http://topic.csdn.net/u/20110416/22/e04f7426-794b-4252-8c44-289f219d115b.html这个帖子中我的回答 --------------------编程问答-------------------- 添加一个标识列就可以了。 identity(1,1) --------------------编程问答-------------------- 楼主是不是想要地第一列按顺序排啊。
你可以在SQL下添加标识列,也可在代码中做下处理 --------------------编程问答-------------------- 路过,帮顶。 --------------------编程问答-------------------- 可能没有说明白
从datagirdview里到出数据到excel后,需要添加一列,这一列是自动编号,即从1开始一直到datagirdview的最后一行。如何去处理从1到datagirdview末这步操作? --------------------编程问答--------------------
引用 9 楼 zjg528 的回复:
for循环i++
IF 值==DBNULL.VAULE  
 BREAKE;

我是这样写的。for (int xh = 1; xh < myDGV.Rows.Count; xh++)
                    {
                        worksheet.Cells[r + 4, 1] = xh;
                        if (xh == myDGV.Rows.Count)
                        {
                            break;
                        }
                    }
mydgv有117行,到最后这一行显示的全部是117 --------------------编程问答--------------------         public void doExport(System.Windows.Forms.DataGridView dataGridView)
        {

            Excel.Application excel = new Excel.Application();

            excel.Application.Workbooks.Add(true);

            excel.Columns.NumberFormat = "@";
            excel.Cells[1,1]="序号";
                for (int j = 0; j < dataGridView.Rows.Count; j++)
                {
                    excel.Cells[j + 1, 1] = j+1;
                }
            for (int i = 0; i < dataGridView.Columns.Count; i++)
            {
                excel.Cells[1, i+2] = dataGridView.Columns[i].HeaderText;
                for (int j = 0; j < dataGridView.Rows.Count; j++)
                {
                    excel.Cells[j + 2, i+2] = GetStringFromCell(dataGridView.Rows[j].Cells[i]);
                }
            }

            excel.Visible = false;
            //excel.Sheets[0] = "sss";
            excel.ActiveWorkbook.SaveAs(strExcelFileName , Excel.XlFileFormat.xlExcel9795, null, null, false, false, Excel.XlSaveAsAccessMode.xlNoChange, null, null, null, null, null);


            //wkbNew.SaveAs strBookName


            //excel.Save(strExcelFileName);
            excel.Quit();
            excel = null;

            GC.Collect();//垃圾回收
        } --------------------编程问答-------------------- r是什么东西呀?
引用 14 楼 balion49327932 的回复:
可能没有说明白
从datagirdview里到出数据到excel后,需要添加一列,这一列是自动编号,即从1开始一直到datagirdview的最后一行。如何去处理从1到datagirdview末这步操作?
--------------------编程问答-------------------- http://csharp.net-informations.com/excel/csharp-excel-tutorial.htm
这个教程不错 --------------------编程问答-------------------- LZ问题没说明白
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,