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

c#中如何把数据库取出的数据写入指定的Excel文件中,在线等待,请高手帮忙!!!

问:
想要实现如下的功能:
IE上有个按钮A,从文本框读取文件名,单击按钮,数据保存到已经存在的Excel表中。
我用如下代码打开一个Excel表:
private void A_Click(object sender, System.EventArgs e)
{
Excel.Application myExcel=new Excel.Excel.Application ();
myExcel.Application.Workbooks.Add(true);
myExcel.Visible=true;
}
单击后Excel拒绝访问?为什么?。如何解决?
敬请大家指点,多谢了!!!
--------------------编程问答-------------------- Excel.Application myExcel=new Excel.Excel.Application ();
不是
Excel.Application myExcel=new Excel.Application();

我看是不是你的本级环境配置问题? --------------------编程问答-------------------- Excel.Application myExcel=new Excel.Application(); --------------------编程问答-------------------- SaveFileDialog saveFileDialog = new SaveFileDialog();
            saveFileDialog.Filter = "Execl files (*.xls)|*.xls";
            saveFileDialog.FilterIndex = 0;
            saveFileDialog.RestoreDirectory = true;
            saveFileDialog.CreatePrompt = false;
            saveFileDialog.Title = "导出Excel文件到";

            if (saveFileDialog.ShowDialog() == DialogResult.Cancel)
                return;
            Stream myStream = saveFileDialog.OpenFile();
            StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding("gb2312")); //gb2312

            try
            {
                //写标题 
                for (int i = 0; i < dataGridView1.ColumnCount; i++)
                {
                    if (i == 0) dataGridView1.Columns[i].HeaderText = "序号";
                    if (i > 0)
                    {
                        str += "\t";
                    }

                    str += dataGridView1.Columns[i].HeaderText;
                }

                sw.WriteLine(str);
                //写内容

                for (int j = 0; j < dataGridView1.Rows.Count - 1; j++)
                {
                    tempStr = "";

                    for (int k = 0; k < dataGridView1.Columns.Count; k++)
                    {
                        if (k == 0)
                            dataGridView1.Rows[j].Cells[k].Value = j + 1;

                        if (k > 0)
                        {
                            tempStr += "\t";
                        }
                        tempStr += dataGridView1.Rows[j].Cells[k].Value.ToString();
                    }
                    sw.WriteLine(tempStr);
                }
                sw.Close();
                myStream.Close();
            }
            catch (Exception exp)
            {
                MessageBox.Show(exp.ToString());
            }
            finally
            {
                sw.Close();
                myStream.Close();
            } --------------------编程问答-------------------- Excel.Application myExcel=new Excel.Excel.Application ();
不是
Excel.Application myExcel=new Excel.Application();
这是我贴错了,不是这个问题。 --------------------编程问答-------------------- private void A_Click(object sender, System.EventArgs e)
{
Excel.Application myExcel=new Excel.Application ();
myExcel.Application.Workbooks.Add(true);
myExcel.Visible=true;
}
单击还是Excel拒绝访问。急啊。。。。。 --------------------编程问答-------------------- Excel.Application myExcel = new Excel.Application();//創建excel對象
myExcel.Workbooks.Add(true);//創建excel工作薄 
myExcel.Visible=true --------------------编程问答-------------------- 是不是execl 的线程开多了, 看看资源管理器里! --------------------编程问答-------------------- --------------------编程问答-------------------- 操作步骤: 
                ///   1)先添加对Excel的引用。选择项目-〉添加引用-〉COM-〉添加Microsoft   Excel   9.0 
                ///                         (不同的office讲会有不同版本的dll文件). 
                ///   2)引入using   Microsoft.Office.Interop.Excel;和using   System.Reflection;
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,