Пример #1
0
        // загружаем из Excel
        private void loadToolStripMenuItem_Click(object sender, EventArgs e)
        {
            OpenFileDialog openFileDialog1 = new OpenFileDialog();

            openFileDialog1.CheckPathExists  = true;
            openFileDialog1.Filter           = "Excel (*.xlsx)|*.xlsx|Excel (*.xls)|*.xls";
            openFileDialog1.RestoreDirectory = true;

            if (openFileDialog1.ShowDialog() != DialogResult.Cancel)
            {
                try
                {
                    FileInfo fi = new FileInfo(openFileDialog1.FileName);

                    ExcelEngine  excelEngine = new ExcelEngine();
                    IApplication _excel      = excelEngine.Excel;

                    // Тип файла
                    _excel.DefaultVersion = ExcelVersion.Excel97to2003; // .xls
                    if (fi.Extension == ".xlsx")
                    {
                        _excel.DefaultVersion = ExcelVersion.Excel2010; // .xlsx
                    }
                    IWorkbook  wBook  = _excel.Workbooks.Open(openFileDialog1.FileName);
                    IWorksheet wSheet = wBook.Worksheets[0];

                    decimal _H      = (decimal)wSheet.GetNumber(1, 2);
                    decimal _size   = (decimal)wSheet.GetNumber(2, 2);
                    decimal _profit = (decimal)wSheet.GetNumber(3, 2);

                    if (_H < 2 || _H > 100)
                    {
                        MessageBox.Show("У «Норматив достаточности собственных средств (капитала) H1.0» число не может быть меньше 2 и больше 100", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (_size < numericUpDown_size.Minimum || _size > numericUpDown_size.Maximum)
                    {
                        MessageBox.Show("У «Размер собственных средств» число не может быть меньше " + numericUpDown_size.Minimum + " и больше " + numericUpDown_size.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (_profit < numericUpDown_profit.Minimum || _profit > numericUpDown_profit.Maximum)
                    {
                        MessageBox.Show("У «Прибыль (убыток)до налого облажения» число не может быть меньше " + numericUpDown_profit.Minimum + " и больше " + numericUpDown_profit.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else
                    {
                        numericUpDown_H.Value      = _H;
                        numericUpDown_size.Value   = _size;
                        numericUpDown_profit.Value = _profit;

                        filename_load = openFileDialog1.FileName;
                    }
                }
                catch (Exception ee)
                {
                    MessageBox.Show(ee.ToString(), "Ошибка открытия файла Excel", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }


                if (filename_load != "")
                {
                    saveExcelToolStripMenuItem.Enabled = true;
                }
            }
        }
        // Кнопка загружаем из Excel
        private void mK_load_Excel_ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            OpenFileDialog openFileDialog1 = new OpenFileDialog();

            openFileDialog1.CheckPathExists  = true;
            openFileDialog1.Filter           = "Excel (*.xlsx)|*.xlsx|Excel (*.xls)|*.xls";
            openFileDialog1.RestoreDirectory = true;

            if (openFileDialog1.ShowDialog() != DialogResult.Cancel)
            {
                try
                {
                    FileInfo fi = new FileInfo(openFileDialog1.FileName);

                    ExcelEngine  excelEngine = new ExcelEngine();
                    IApplication _excel      = excelEngine.Excel;

                    // Тип файла
                    _excel.DefaultVersion = ExcelVersion.Excel97to2003; // .xls
                    if (fi.Extension == ".xlsx")
                    {
                        _excel.DefaultVersion = ExcelVersion.Excel2010; // .xlsx
                    }
                    IWorkbook  wBook  = _excel.Workbooks.Open(openFileDialog1.FileName);
                    IWorksheet wSheet = wBook.Worksheets[0];

                    list.Clear();

                    for (int i = 2; i <= wSheet.Columns.Count(); i++)
                    {
                        list.Add(new mul()
                        {
                            name  = string.IsNullOrEmpty(wSheet.GetValueRowCol(1, i).ToString().Replace("-", "").Trim()) ? (i - 1).ToString() : wSheet.GetValueRowCol(1, i).ToString().Replace("-", "").Trim(),
                            P_E   = string.IsNullOrEmpty(wSheet.GetValueRowCol(2, i).ToString().Replace("-", "").Trim()) ? 0 : (decimal)wSheet.GetNumber(2, i),
                            E_P   = string.IsNullOrEmpty(wSheet.GetValueRowCol(3, i).ToString().Replace("-", "").Trim()) ? 0 : (decimal)wSheet.GetNumber(3, i),
                            P_S   = string.IsNullOrEmpty(wSheet.GetValueRowCol(4, i).ToString().Replace("-", "").Trim()) ? 0 : (decimal)wSheet.GetNumber(4, i),
                            P_BV  = string.IsNullOrEmpty(wSheet.GetValueRowCol(5, i).ToString().Replace("-", "").Trim()) ? 0 : (decimal)wSheet.GetNumber(5, i),
                            P_CF  = string.IsNullOrEmpty(wSheet.GetValueRowCol(6, i).ToString().Replace("-", "").Trim()) ? 0 : (decimal)wSheet.GetNumber(6, i),
                            CF_P  = string.IsNullOrEmpty(wSheet.GetValueRowCol(7, i).ToString().Replace("-", "").Trim()) ? 0 : (decimal)wSheet.GetNumber(7, i),
                            P_FCE = string.IsNullOrEmpty(wSheet.GetValueRowCol(8, i).ToString().Replace("-", "").Trim()) ? 0 : (decimal)wSheet.GetNumber(8, i),
                            FCE_P = string.IsNullOrEmpty(wSheet.GetValueRowCol(9, i).ToString().Replace("-", "").Trim()) ? 0 : (decimal)wSheet.GetNumber(9, i)
                        });
                    }

                    filename_load = openFileDialog1.FileName;
                }
                catch (Exception ee)
                {
                    MessageBox.Show(ee.ToString(), "Ошибка открытия файла Excel", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }


                if (filename_load != "")
                {
                    mk_saveExcel_ToolStripMenuItem.Enabled = true;
                }
                showTable();
            }
        }
        // загружаем из Excel
        private void loadToolStripMenuItem_Click(object sender, EventArgs e)
        {
            OpenFileDialog openFileDialog1 = new OpenFileDialog();

            openFileDialog1.CheckPathExists  = true;
            openFileDialog1.Filter           = "Excel (*.xlsx)|*.xlsx|Excel (*.xls)|*.xls";
            openFileDialog1.RestoreDirectory = true;

            if (openFileDialog1.ShowDialog() != DialogResult.Cancel)
            {
                try
                {
                    FileInfo fi = new FileInfo(openFileDialog1.FileName);

                    ExcelEngine  excelEngine = new ExcelEngine();
                    IApplication _excel      = excelEngine.Excel;

                    // Тип файла
                    _excel.DefaultVersion = ExcelVersion.Excel97to2003; // .xls
                    if (fi.Extension == ".xlsx")
                    {
                        _excel.DefaultVersion = ExcelVersion.Excel2010; // .xlsx
                    }
                    IWorkbook  wBook  = _excel.Workbooks.Open(openFileDialog1.FileName);
                    IWorksheet wSheet = wBook.Worksheets[0];

                    decimal _s_n_yk  = (decimal)wSheet.GetNumber(4, 2);
                    decimal _s_n_dk  = (decimal)wSheet.GetNumber(5, 2);
                    decimal _s_n_rk  = (decimal)wSheet.GetNumber(6, 2);
                    decimal _s_n_fss = (decimal)wSheet.GetNumber(7, 2);
                    decimal _s_n_cfp = (decimal)wSheet.GetNumber(8, 2);

                    decimal _z_n_dk = (decimal)wSheet.GetNumber(11, 2);
                    decimal _z_n_kk = (decimal)wSheet.GetNumber(12, 2);
                    decimal _z_n_kz = (decimal)wSheet.GetNumber(13, 2);
                    decimal _z_n_p  = (decimal)wSheet.GetNumber(14, 2);


                    decimal _s_k_yk  = (decimal)wSheet.GetNumber(4, 4);
                    decimal _s_k_dk  = (decimal)wSheet.GetNumber(5, 4);
                    decimal _s_k_rk  = (decimal)wSheet.GetNumber(6, 4);
                    decimal _s_k_fss = (decimal)wSheet.GetNumber(7, 4);
                    decimal _s_k_cfp = (decimal)wSheet.GetNumber(8, 4);

                    decimal _z_k_dk = (decimal)wSheet.GetNumber(11, 4);
                    decimal _z_k_kk = (decimal)wSheet.GetNumber(12, 4);
                    decimal _z_k_kz = (decimal)wSheet.GetNumber(13, 4);
                    decimal _z_k_p  = (decimal)wSheet.GetNumber(14, 4);


                    if (_s_n_yk < numericUpDown_s_n_yk.Minimum || _s_n_yk > numericUpDown_s_n_yk.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_2.Text + "» число не может быть меньше " + numericUpDown_s_n_yk.Minimum + " и больше " + numericUpDown_s_n_yk.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (_s_n_dk < numericUpDown_s_n_dk.Minimum || _s_n_dk > numericUpDown_s_n_dk.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_3.Text + "» число не может быть меньше " + numericUpDown_s_n_dk.Minimum + " и больше " + numericUpDown_s_n_dk.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (_s_n_rk < numericUpDown_s_n_rk.Minimum || _s_n_rk > numericUpDown_s_n_rk.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_4.Text + "» число не может быть меньше " + numericUpDown_s_n_rk.Minimum + " и больше " + numericUpDown_s_n_rk.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (_s_n_fss < numericUpDown_s_n_fss.Minimum || _s_n_fss > numericUpDown_s_n_fss.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_5.Text + "» число не может быть меньше " + numericUpDown_s_n_fss.Minimum + " и больше " + numericUpDown_s_n_fss.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (_s_n_cfp < numericUpDown_s_n_cfp.Minimum || _s_n_cfp > numericUpDown_s_n_cfp.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_6.Text + "» число не может быть меньше " + numericUpDown_s_n_cfp.Minimum + " и больше " + numericUpDown_s_n_cfp.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }

                    else if (_z_n_dk < numericUpDown_z_n_dk.Minimum || _z_n_dk > numericUpDown_z_n_dk.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_9.Text + "» число не может быть меньше " + numericUpDown_z_n_dk.Minimum + " и больше " + numericUpDown_z_n_dk.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (_z_n_kk < numericUpDown_z_n_kk.Minimum || _z_n_kk > numericUpDown_z_n_kk.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_10.Text + "» число не может быть меньше " + numericUpDown_z_n_kk.Minimum + " и больше " + numericUpDown_z_n_kk.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (_z_n_kz < numericUpDown_z_n_kz.Minimum || _z_n_kz > numericUpDown_z_n_kz.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_11.Text + "» число не может быть меньше " + numericUpDown_z_n_kz.Minimum + " и больше " + numericUpDown_z_n_kz.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (_z_n_p < numericUpDown_z_n_p.Minimum || _z_n_p > numericUpDown_z_n_p.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_12.Text + "» число не может быть меньше " + numericUpDown_z_n_p.Minimum + " и больше " + numericUpDown_z_n_p.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }

                    else if (_s_k_yk < numericUpDown_s_k_yk.Minimum || _s_k_yk > numericUpDown_s_k_yk.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_2.Text + "» число не может быть меньше " + numericUpDown_s_k_yk.Minimum + " и больше " + numericUpDown_s_k_yk.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (_s_k_dk < numericUpDown_s_k_dk.Minimum || _s_k_dk > numericUpDown_s_k_dk.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_3.Text + "» число не может быть меньше " + numericUpDown_s_k_dk.Minimum + " и больше " + numericUpDown_s_k_dk.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (_s_k_rk < numericUpDown_s_k_rk.Minimum || _s_k_rk > numericUpDown_s_k_rk.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_4.Text + "» число не может быть меньше " + numericUpDown_s_k_rk.Minimum + " и больше " + numericUpDown_s_k_rk.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (_s_k_fss < numericUpDown_s_k_fss.Minimum || _s_k_fss > numericUpDown_s_k_fss.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_5.Text + "» число не может быть меньше " + numericUpDown_s_k_fss.Minimum + " и больше " + numericUpDown_s_k_fss.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (_s_k_cfp < numericUpDown_s_k_cfp.Minimum || _s_k_cfp > numericUpDown_s_k_cfp.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_6.Text + "» число не может быть меньше " + numericUpDown_s_k_cfp.Minimum + " и больше " + numericUpDown_s_k_cfp.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }

                    else if (_z_k_dk < numericUpDown_z_k_dk.Minimum || _z_k_dk > numericUpDown_z_k_dk.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_9.Text + "» число не может быть меньше " + numericUpDown_z_k_dk.Minimum + " и больше " + numericUpDown_z_k_dk.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (_z_k_kk < numericUpDown_z_k_kk.Minimum || _z_k_kk > numericUpDown_z_k_kk.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_10.Text + "» число не может быть меньше " + numericUpDown_z_k_kk.Minimum + " и больше " + numericUpDown_z_k_kk.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (_z_k_kz < numericUpDown_z_k_kz.Minimum || _z_k_kz > numericUpDown_z_k_kz.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_11.Text + "» число не может быть меньше " + numericUpDown_z_k_kz.Minimum + " и больше " + numericUpDown_z_k_kz.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else if (_z_k_p < numericUpDown_z_k_p.Minimum || _z_k_p > numericUpDown_z_k_p.Maximum)
                    {
                        MessageBox.Show("У «" + label_col1_12.Text + "» число не может быть меньше " + numericUpDown_z_k_p.Minimum + " и больше " + numericUpDown_z_k_p.Maximum, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else
                    {
                        numericUpDown_s_n_yk.Value  = _s_n_yk;
                        numericUpDown_s_n_dk.Value  = _s_n_dk;
                        numericUpDown_s_n_rk.Value  = _s_n_rk;
                        numericUpDown_s_n_fss.Value = _s_n_fss;
                        numericUpDown_s_n_cfp.Value = _s_n_cfp;

                        numericUpDown_z_n_dk.Value = _z_n_dk;
                        numericUpDown_z_n_kk.Value = _z_n_kk;
                        numericUpDown_z_n_kz.Value = _z_n_kz;
                        numericUpDown_z_n_p.Value  = _z_n_p;

                        numericUpDown_s_k_yk.Value  = _s_k_yk;
                        numericUpDown_s_k_dk.Value  = _s_k_dk;
                        numericUpDown_s_k_rk.Value  = _s_k_rk;
                        numericUpDown_s_k_fss.Value = _s_k_fss;
                        numericUpDown_s_k_cfp.Value = _s_k_cfp;

                        numericUpDown_z_k_dk.Value = _z_k_dk;
                        numericUpDown_z_k_kk.Value = _z_k_kk;
                        numericUpDown_z_k_kz.Value = _z_k_kz;
                        numericUpDown_z_k_p.Value  = _z_k_p;

                        filename_load = openFileDialog1.FileName;
                    }
                }
                catch (Exception ee)
                {
                    MessageBox.Show(ee.Message, "Ошибка открытия файла Excel", MessageBoxButtons.OK, MessageBoxIcon.Error);

                    numericUpDown_s_n_yk.Value  = 0;
                    numericUpDown_s_n_dk.Value  = 0;
                    numericUpDown_s_n_rk.Value  = 0;
                    numericUpDown_s_n_fss.Value = 0;
                    numericUpDown_s_n_cfp.Value = 0;

                    numericUpDown_z_n_dk.Value = 0;
                    numericUpDown_z_n_kk.Value = 0;
                    numericUpDown_z_n_kz.Value = 0;
                    numericUpDown_z_n_p.Value  = 0;

                    numericUpDown_s_k_yk.Value  = 0;
                    numericUpDown_s_k_dk.Value  = 0;
                    numericUpDown_s_k_rk.Value  = 0;
                    numericUpDown_s_k_fss.Value = 0;
                    numericUpDown_s_k_cfp.Value = 0;

                    numericUpDown_z_k_dk.Value = 0;
                    numericUpDown_z_k_kk.Value = 0;
                    numericUpDown_z_k_kz.Value = 0;
                    numericUpDown_z_k_p.Value  = 0;
                }


                if (filename_load != "")
                {
                    saveExcelToolStripMenuItem.Enabled = true;
                }
            }
        }