指定目录下的EXCEL下载

    private void toolStripLabel3_Click(object sender, EventArgs e)
        {
            saveFileDialog1.FileName = "测评表.xls";
            if (saveFileDialog1.ShowDialog() == DialogResult.Cancel)
            {
                return;
            }
            try
            {
                FileInfo mode = new FileInfo(Application.StartupPath + "\\word\\B_qz_wdcp.xls");
                Excel.Application app = new Excel.Application();
                if (app == null)
                {
                    MessageBox.Show("您的电脑上未装Excel!或缺少Excel文件,请重新安装Excel");
                    return;
                }
                app.Application.DisplayAlerts = false;
                app.Visible = false;
                if (mode.Exists)
                {
                    Excel.Workbook tworkbook;
                    Object missing = System.Reflection.Missing.Value;

                    app.Workbooks.Add(missing);
                    //调用模板
                    tworkbook = app.Workbooks.Open(mode.FullName, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing, missing);
                    Excel.Worksheet tworksheet = (Excel.Worksheet)tworkbook.Sheets[1];

                    tworksheet.SaveAs(saveFileDialog1.FileName, missing, missing, missing, missing, missing, missing, missing, missing, missing);

                    tworkbook.Close(false, mode.FullName, missing);
                    app.Workbooks.Close();
                    app.Quit();

                    tworkbook = null;
                    app = null;
                    //强制对所有代进行垃圾回收
                    GC.Collect();

                    if (MessageBox.Show("已下载,需要打开吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        try
                        {
                            System.Diagnostics.Process.Start(saveFileDialog1.FileName);
                        }
                        catch
                        {
                            MessageBox.Show("自动打开失败,请手动打开!", "提示");
                        }
                    }
                }
                else
                {
                    MessageBox.Show("excel模板不存在,请联系管理员!", "提示");
                }
            }
            catch (Exception ee)
            {
                MessageBox.Show(ee.Message, "提示");
            }
        }

 

posted @ 2013-11-25 09:41  心绪如泥  阅读(303)  评论(0编辑  收藏  举报