コード例 #1
0
ファイル: FrmResult.cs プロジェクト: lvzhuoming/FireBridCloud
        private void btnExcel_Click(object sender, EventArgs e)
        {
            SaveFileDialog sfd = new SaveFileDialog();

            sfd.Title  = "请选择保存位置";
            sfd.Filter = "Excel文件 (*.xls)|*.xls";
            if (sfd.ShowDialog() != DialogResult.OK)
            {
                return;
            }
            string fileName = sfd.FileName;

            try
            {
                ExcelMakerNPOI maker = new ExcelMakerNPOI(ExcelFormat.XLS);
                maker.CreateSheet("数据库结构检查");
                DataTable dt = this.dgvData.DataSource as DataTable;
                //数据
                maker.WriteDataToExcel(dt, 0, 0, true);
                //保存
                maker.Save(fileName);
            }
            catch (Exception ex)
            {
                //MapSoftLog.LogError(ex.Message, ex);
                //MessageHandler.ShowErrorMsg(ex);
                MessageBox.Show(ex.ToString(), "导出失败");
                return;
            }
            MessageBox.Show("导出成功");
        }
コード例 #2
0
        private void btnSelectFile_Click(object sender, EventArgs e)
        {
            string strTitle  = string.Empty;
            string strFilter = string.Empty;

            strTitle  = "请选择Excel文件";
            strFilter = "Excel文件(*.xls)|*.xls";

            //选择Excel文件
            OpenFileDialog dia = new OpenFileDialog();

            dia.Title       = strTitle;
            dia.Filter      = strFilter;
            dia.Multiselect = false;
            //dia.InitialDirectory = lastSelectPath;
            if (dia.ShowDialog() == DialogResult.OK)
            {
                txt_filePath.Text = dia.FileName;
                //txtPath.Text = strSelectedPath;
            }

            ExcelMakerNPOI maker = new ExcelMakerNPOI();

            if (!ExcelMakerNPOI.OpenExcel(ref maker, txt_filePath.Text))
            {
                return;
            }
            //获取Excel表名
            string[] sheetNames = maker.GetSheetNames();
            if (sheetNames == null)
            {
                return;
            }
            string sheetName = sheetNames[0];

            //设置当前表
            maker.ActiveSheet(sheetName);
            //表格行列数
            int rowCount    = maker.RowNumbers;
            int columnCount = maker.ColumnNumbers;

            //表格数据存储至DataTable中
            dt = maker.ReadExcelToDataTable(1);
        }
コード例 #3
0
 /// <summary>
 /// 打开Excel打开,如果被占用则提示
 /// </summary>
 /// <param name="maker"></param>
 /// <param name="excelFile"></param>
 public static bool OpenExcel(ref ExcelMakerNPOI maker, string excelFile)
 {
     try
     {
         maker.Open(excelFile);
         return(true);
     }
     catch (Exception ex)
     {
         //MapSoftLog.LogError(ex.Message, ex);
         if (ex.Message.Contains("The process cannot access the file"))
         {
             MessageBox.Show("Excel文件已被打开,请先关闭后再操作!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
         else
         {
             MessageBox.Show(ex.ToString());
         }
         return(false);
     }
 }