void Form1_DragDrop(object sender, DragEventArgs e) { string[] files = (string[])e.Data.GetData(DataFormats.FileDrop, false); if (files.Length > 1) { MessageBox.Show("Több fájlt választott ki!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } string fajlHely = files[0]; Properties.Settings.Default.ExcelFajlHelye = fajlHely; excelHelye.Text = fajlHely; if (FileMethods.IsExcelComptaible(fajlHely)) { FileMethods.FajlOlvasas(); ListaJelenites(); } else if (Path.GetExtension(fajlHely) == ".csv") { ListaJelenites(); } else { excelHelye.Text = ""; fajlHely = ""; ExcelOldalNevek.Visible = false; frissites.Visible = false; MessageBox.Show("Nem megfelelő a megadott fájlformátum. (.csv , .xlsx, .xlsm)", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); } Properties.Settings.Default.Save(); }
public void ListaJelenites() { if (FileMethods.IsExcelComptaible(Properties.Settings.Default.ExcelFajlHelye)) { ExcelOldalNevek.Items.Clear(); ExcelOldalNevek.Visible = true; frissites.Visible = true; Excel.Workbook excelBooks = null; try { excelBooks = xlWorkbooks.Open(Properties.Settings.Default.ExcelFajlMasolata); String[] excelSheets = new String[excelBooks.Worksheets.Count]; int i = 0; foreach (Excel.Worksheet wSheet in excelBooks.Worksheets) { excelSheets[i] = wSheet.Name; ExcelOldalNevek.Items.Add(wSheet.Name); i++; } try { ExcelOldalNevek.SelectedIndex = Properties.Settings.Default.oldalszam; } catch { ExcelOldalNevek.SelectedIndex = 0; Properties.Settings.Default.oldalszam = ExcelOldalNevek.SelectedIndex; Properties.Settings.Default.Save(); } } catch (Exception ex) { MessageBox.Show("Hibás az excel fájl! " + ex, "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); excelHelye.Text = ""; Properties.Settings.Default.ExcelFajlHelye = ""; ExcelOldalNevek.Visible = false; frissites.Visible = false; } finally { if (excelBooks != null) { FileMethods.DisposeExcelInstance(excelBooks); } } } else { ExcelOldalNevek.Visible = false; frissites.Visible = false; } }
private void Torles_Click(object sender, EventArgs e) { if (Path.GetExtension(Properties.Settings.Default.ExcelFajlHelye) == ".csv") { MessageBox.Show("Csak .xlsx és .xlsm fájllal működik!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (FileMethods.IsExcelComptaible(Properties.Settings.Default.ExcelFajlHelye)) { if (FileMethods.IsFileLocked(Properties.Settings.Default.ExcelFajlHelye) == false) { torlesFolyamatban.Visible = true; torlesFolyamatban.BringToFront(); Excel.Workbook xlWorkbook = xlWorkbooks.Open(Properties.Settings.Default.ExcelFajlHelye); Excel.Worksheet xlWorksheet = xlWorkbook.Sheets[Properties.Settings.Default.oldalszam + 1]; Excel.Range xlRange = xlWorksheet.UsedRange; int totalRows = ExcelApp.GetMinimalUsedRangeAddress(xlWorksheet); int totalColumns = xlRange.Columns.Count; int szam = kivSor; Excel.Range delRange = xlWorksheet.Rows[szam]; delRange.EntireRow.Delete(Type.Missing); for (int i = szam; i < totalRows; i++) { xlWorksheet.Cells[i, 1].Value = i - 1; } string megjegyzes = (megjegyzesek.Text); xlWorksheet.Cells[szam, totalColumns].Value = megjegyzes; try { xlWorkbook.Save(); } catch { MessageBox.Show("Nem sikerült a mentés! Ellenőrizze hogy be van-e zárva a fájl.", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); } FileMethods.DisposeExcelInstance(xlWorkbook, xlWorksheet); torlesFolyamatban.Visible = false; this.Hide(); } else { MessageBox.Show("Nem elérhető a fájl. Zárja be a szerkesztés miatt!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } } }
private void Form1_Load(object sender, EventArgs e) { if (FileMethods.IsExcelComptaible(Properties.Settings.Default.ExcelFajlHelye)) { ExcelOldalNevek.Visible = true; frissites.Visible = true; } else { ExcelOldalNevek.Visible = false; frissites.Visible = false; panel5.Visible = false; } }
private void excelKereses_Click(object sender, EventArgs e) { if (openFD.ShowDialog() == DialogResult.OK) { excelHelye.Text = openFD.FileName; } else { return; } string fajlHely = excelHelye.Text; if (!File.Exists(fajlHely)) { MessageBox.Show("Nem található a fájl. (.csv , .xlsx, .xlsm)", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } staticLoading.Visible = true; staticLoading.BringToFront(); Properties.Settings.Default.ExcelFajlHelye = fajlHely; if (FileMethods.IsExcelComptaible(fajlHely)) { if (xlApp == null) { MessageBox.Show("Nem található Excel alkalmazás!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); excelHelye.Text = ""; ExcelOldalNevek.Visible = false; frissites.Visible = false; return; } FileMethods.FajlOlvasas(); ListaJelenites(); } else if (Path.GetExtension(fajlHely) == ".csv") { ExcelOldalNevek.Visible = false; frissites.Visible = false; } else { excelHelye.Text = ""; ExcelOldalNevek.Visible = false; frissites.Visible = false; MessageBox.Show("Nem megfelelő a megadott fájlformátum. (.csv , .xlsx, .xlsm)", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); } Properties.Settings.Default.Save(); staticLoading.Visible = false; }
public void autoSuggestTolt() { if (FileMethods.IsExcelComptaible(Properties.Settings.Default.ExcelFajlHelye)) { staticLoading.Visible = true; staticLoading.BringToFront(); string hely = Properties.Settings.Default.ExcelFajlMasolata; var xlWorkbook = xlWorkbooks.Open(Properties.Settings.Default.ExcelFajlMasolata); Excel._Worksheet xlWorksheet = xlWorkbook.Sheets[ExcelOldalNevek.SelectedIndex + 1]; Excel.Range xlRange = xlWorksheet.UsedRange; int totalRows = xlRange.Rows.Count; int totalColumns = xlRange.Columns.Count; AutoCompleteStringCollection nevek = new AutoCompleteStringCollection(); string nev = SorSzam.Text.ToLower().Trim(); SorSzam.Items.Clear(); listOnit.Clear(); for (int Row = 2; Row <= totalRows; Row++) { string SzerkNev = Convert.ToString(xlWorksheet.Cells[Row, 2].Text); if (SzerkNev.Contains("(")) { string[] ketNev = SzerkNev.Split('('); SzerkNev = ketNev[0].Trim(); } string nev2 = SzerkNev; if (SzerkNev == null) { SzerkNev = ""; continue; } listOnit.Add(nev2); } SorSzam.Items.AddRange(listOnit.ToArray()); FileMethods.DisposeExcelInstance(xlWorkbook, xlWorksheet); staticLoading.Visible = false; } }
public bool UjTanulo(string excelHelye) { if (excelHelye == "" || excelHelye == null) { MessageBox.Show("Válaszd ki az olvasni kívánt excel fájlt!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); return(false); } int totalRows = 1; megjegyzesek.Text = ""; List <string> adatTipusok = new List <string>(); if (FileMethods.IsExcelComptaible(Properties.Settings.Default.ExcelFajlHelye)) { FileMethods.FajlOlvasas(); bool szabadE = FileMethods.IsFileLocked(Properties.Settings.Default.ExcelFajlHelye); if (szabadE == true) { MessageBox.Show("Nem elérhető a fájl. Zárja be a szerkesztés miatt!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); return(false); } Excel._Workbook xlWorkbook = xlWorkbooks.Open(Properties.Settings.Default.ExcelFajlMasolata); Excel.Worksheet xlWorksheet = xlWorkbook.Sheets[Properties.Settings.Default.oldalszam + 1]; Excel.Range xlRange = xlWorksheet.UsedRange; totalRows = ExcelApp.GetMinimalUsedRangeAddress(xlWorksheet); int totalColumns = xlRange.Columns.Count; kivSor = totalRows + 1; int szam = 1; var sb = new StringBuilder(); for (int ColumnNum = 1; ColumnNum <= totalColumns + 1; ColumnNum++) { string row = Convert.ToString(xlWorksheet.Cells[szam, ColumnNum].Text); if (row == null) { row = ""; } sb.Append("đ"); sb.Append(row); } FileMethods.DisposeExcelInstance(xlWorkbook, xlWorksheet); string[] Sorelemek = sb.ToString().Split('đ'); for (int j = 1; j < Sorelemek.Length; j++) { adatTipusok.Add(Sorelemek[j]); } } else { MessageBox.Show("Csak .xlsx, vagy .xlsm fájlnál működik a funkció!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); return(false); } dataGridView1.Rows.Clear(); for (int i = 0; i < adatTipusok.Count - 2; i++) { var index = dataGridView1.Rows.Add(); dataGridView1.Rows[index].Cells[0].Value = adatTipusok[i]; } try { dataGridView1.Rows[0].Cells[1].Value = totalRows; } catch { MessageBox.Show("Semmilyen adattípus nincs megadva a táblázatban!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); Visible = false; return(false); } if (Properties.Settings.Default.ujTanuloIdo) { string ido = DateTime.Now.ToString("MM/dd/yyyy"); string ev = ido.Substring(8, 4) + "."; string honap = ido.Substring(0, 2) + "."; string nap = ido.Substring(4, 2) + "."; megjegyzesek.Text = ("Hozzáadás dátuma: " + ev + honap + nap); } dataGridView1.Rows[0].ReadOnly = true; dataGridView1.Columns[0].ReadOnly = true; dataGridView1.Rows[0].DefaultCellStyle.BackColor = Color.FromArgb(224, 224, 224); dataGridView1.Rows[0].DefaultCellStyle.SelectionBackColor = Color.FromArgb(224, 224, 224); dataGridView1.Rows[0].DefaultCellStyle.SelectionForeColor = Color.Black; Application.DoEvents(); BringToFront(); Show(); return(true); }
private void Szerkesztes_Click(object sender, EventArgs e) { if (dataGridView1.Rows[1].Cells[1].Value == null || dataGridView1.Rows[1].Cells[1].Value.ToString() == "") { MessageBox.Show("Nem írt be nevet a tanulónak!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } mentesFolyamatban.Visible = true; mentesFolyamatban.BringToFront(); if (FileMethods.IsExcelComptaible(Properties.Settings.Default.ExcelFajlHelye)) { if (FileMethods.IsFileLocked(Properties.Settings.Default.ExcelFajlHelye) == false) { Excel.Workbook xlWorkbook = xlWorkbooks.Open(Properties.Settings.Default.ExcelFajlHelye); Excel.Worksheet xlWorksheet = xlWorkbook.Sheets[Properties.Settings.Default.oldalszam + 1]; Excel.Range xlRange = xlWorksheet.UsedRange; int totalRows = ExcelApp.GetMinimalUsedRangeAddress(xlWorksheet); int totalColumns = xlRange.Columns.Count; string sorszam = dataGridView1.Rows[0].Cells[1].Value.ToString(); int szam = 0; try { szam = Convert.ToInt32(sorszam) + 1; } catch (Exception) { FileMethods.DisposeExcelInstance(xlWorkbook, xlWorksheet); MessageBox.Show("Hiba a sorszám olvasásnál!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } int count = 0; szam = kivSor; while (count < dataGridView1.RowCount - 1) { string data; if (dataGridView1.Rows[count].Cells[1].Value == null) { data = ""; } else { data = (dataGridView1.Rows[count].Cells[1].Value.ToString()); } xlWorksheet.Cells[szam, count + 1].Value = data; count++; } xlWorksheet.Columns.RowHeight = 15; string megjegyzes = (megjegyzesek.Text); xlWorksheet.Cells[szam, totalColumns].Value = megjegyzes; try { xlWorkbook.Save(); } catch { MessageBox.Show("Nem sikerült a mentés! Ellenőrizze hogy be van-e zárva a fájl.", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); } FileMethods.DisposeExcelInstance(xlWorkbook, xlWorksheet); } else { MessageBox.Show("Nem elérhető a fájl. Zárja be a szerkesztés miatt!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } mentesFolyamatban.Visible = false; }
public bool TanuloAdatBetoltes(string sorszam, string excelHelye) { bool sikerült = false; if (sorszam == "" || sorszam == null) { MessageBox.Show("Írj be nevet vagy sorszámot", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); return(sikerült); } if (excelHelye == "" || excelHelye == null) { MessageBox.Show("Válaszd ki az olvasni kívánt excel fájlt!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); return(sikerült); } dataGridView1.Rows.Clear(); dataGridView1.Refresh(); bool elso = true; FileMethods.FajlOlvasas(); List <string> adatTipusok = new List <string>(); List <string> kivalasztott = new List <string>(); string megjegyzes = ""; List <string> sorszamok = new List <string>(); if (Properties.Settings.Default.ExcelFajlHelye != null && sorszam != null) { if (Path.GetExtension(Properties.Settings.Default.ExcelFajlHelye) == ".csv") { try { var fs = new FileStream(Properties.Settings.Default.ExcelFajlHelye, FileMode.Open, FileAccess.Read, FileShare.ReadWrite); using (var Olvas = new StreamReader(fs, Encoding.Default)) { if (GeneralMethods.IsDigitOnly(sorszam)) { for (int i = 0; i <= (Convert.ToInt32(sorszam)); i++) { string sor = Olvas.ReadLine(); if (sor == null) { MessageBox.Show("Üres a fájl", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); Visible = false; return(sikerült); } if (elso == true) { string[] Sorelemek = sor.Split(';'); for (int j = 0; j < (Sorelemek.Length); j++) { adatTipusok.Add(Sorelemek[j]); elso = false; } } if (i == Convert.ToInt32(sorszam)) { string[] Sorelemek = sor.Split(';'); for (int j = 0; j < (Sorelemek.Length); j++) { kivalasztott.Add(Sorelemek[j].Replace("0:00:00", "")); } megjegyzes = Sorelemek.Last(); } } } else if (!GeneralMethods.IsDigitOnly(sorszam)) { int count = 0; string nev = sorszam.ToLower().Trim(); while (!Olvas.EndOfStream) { string sor = Olvas.ReadLine(); string[] Sorelemek = sor.Split(';'); string nev2 = Sorelemek[1].ToLower().Replace("0:00:00", ""); if (sor == null) { MessageBox.Show("Üres a fájl", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); Visible = false; return(sikerült); } if (elso == true) { for (int j = 0; j < (Sorelemek.Length); j++) { adatTipusok.Add(Sorelemek[j]); elso = false; } } if (!Properties.Settings.Default.ekezetek) { nev = GeneralMethods.RemoveDiacritics(nev); nev2 = GeneralMethods.RemoveDiacritics(nev2); } if (!Properties.Settings.Default.szokoz) { nev = nev.Replace(" ", "").Replace("-", ""); nev2 = nev2.Replace(" ", "").Replace("-", ""); } nev = nev.Replace("dr.", ""); nev2 = nev2.Replace("dr.", ""); if (nev2.Contains("(")) { string[] ketNev = nev2.Split('('); nev2 = ketNev[0].Trim(); } if (nev == nev2) { sorszamok.Add(Sorelemek[0]); for (int j = 0; j < (Sorelemek.Length); j++) { kivalasztott.Add(Sorelemek[j]); } megjegyzes = Sorelemek.Last(); count++; } } if (count > 1) { string sorString = String.Join(", ", sorszamok.ToArray()); string uzenet = "Több ilyen nevű tanuló is van! Használd a sorszámát.(Azonos nevűek sorszáma: " + sorString + ")"; MessageBox.Show(uzenet, "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); Visible = false; return(sikerült); } if (count == 0) { MessageBox.Show("Nincs találat az adott excel táblázatban. Ellenőrizd a beírt nevet!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); Visible = false; return(sikerült); } } } fs.Close(); fs.Dispose(); } catch (Exception) { MessageBox.Show("Nem található a kiválasztott fájl.", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); Visible = false; return(sikerült); } mentes.Visible = false; } else if (FileMethods.IsExcelComptaible(Properties.Settings.Default.ExcelFajlHelye)) { var xlWorkbook = xlWorkbooks.Open(Properties.Settings.Default.ExcelFajlMasolata); Excel._Worksheet xlWorksheet = xlWorkbook.Sheets[Properties.Settings.Default.oldalszam + 1]; Excel.Range xlRange = xlWorksheet.UsedRange; int totalRows = xlRange.Rows.Count; int totalColumns = xlRange.Columns.Count; if (elso == true) { int szam = 1; var sb = new StringBuilder(); for (int ColumnNum = 1; ColumnNum <= totalColumns + 1; ColumnNum++) { string row = Convert.ToString(xlWorksheet.Cells[szam, ColumnNum].Text); if (row == null) { row = ""; } sb.Append("đ"); sb.Append(row); } string[] Sorelemek = sb.ToString().Split('đ'); for (int j = 1; j < Sorelemek.Length; j++) { adatTipusok.Add(Sorelemek[j]); } } if (GeneralMethods.IsDigitOnly(sorszam)) { int szam = Convert.ToInt32(sorszam) + 1; kivSor = szam; var sb = new StringBuilder(); for (int ColumnNum = 1; ColumnNum <= totalColumns + 1; ColumnNum++) { string row = Convert.ToString(xlWorksheet.Cells[szam, ColumnNum].Text); if (row == null) { row = ""; } sb.Append("đ"); sb.Append(row.Replace("0:00:00", "")); } string[] Sorelemek = sb.ToString().Split('đ'); for (int j = 1; j < Sorelemek.Length; j++) { kivalasztott.Add(Sorelemek[j]); } megjegyzes = Sorelemek[Sorelemek.Length - 2]; } if (!GeneralMethods.IsDigitOnly(sorszam)) { int count = 0; string nev = sorszam.ToLower().Trim(); for (int Row = 1; Row <= totalRows + 1; Row++) { string nev2 = Convert.ToString(xlWorksheet.Cells[Row, 2].Text); if (nev2 == null) { nev2 = ""; } nev2 = nev2.ToLower(); if (!Properties.Settings.Default.ekezetek) { nev = GeneralMethods.RemoveDiacritics(nev); nev2 = GeneralMethods.RemoveDiacritics(nev2); } if (!Properties.Settings.Default.szokoz) { nev = nev.Replace(" ", "").Replace("-", ""); nev2 = nev2.Replace(" ", "").Replace("-", ""); } nev = nev.Replace("dr.", ""); nev2 = nev2.Replace("dr.", ""); if (nev2.Contains("(")) { string[] ketNev = nev2.Split('('); nev2 = ketNev[0].Trim(); } if (nev == nev2) { kivSor = Row; var sb = new StringBuilder(); for (int ColumnNum = 1; ColumnNum <= totalColumns + 1; ColumnNum++) //select starting row here { string nextData = Convert.ToString(xlWorksheet.Cells[Row, ColumnNum].Text); if (nextData == null) { nextData = ""; } sb.Append("đ"); sb.Append(nextData.Replace("0:00:00", "")); } string[] Sorelemek = sb.ToString().Split('đ'); count++; sorszamok.Add(Convert.ToString(xlWorksheet.Cells[Row, 1].Text)); for (int j = 1; j < Sorelemek.Length; j++) { kivalasztott.Add(Sorelemek[j]); } megjegyzes = Sorelemek[Sorelemek.Length - 2]; } } if (count > 1) { string sorString = String.Join(", ", sorszamok.ToArray()); string uzenet = "Több ilyen nevű tanuló is van! Használd a sorszámát.(Azonos nevűek sorszáma: " + sorString + ")"; MessageBox.Show(uzenet, "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); FileMethods.DisposeExcelInstance(xlWorkbook, xlWorksheet); Visible = false; return(sikerült); } if (count == 0) { MessageBox.Show("Nincs találat az adott excel táblázatban. Ellenőrizd a beírt nevet!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); Visible = false; return(sikerült); } } mentes.Visible = true; FileMethods.DisposeExcelInstance(xlWorkbook, xlWorksheet); } if (adatTipusok.Count > kivalasztott.Count) { int kulonbseg = adatTipusok.Count - kivalasztott.Count; for (int j = 0; j < kulonbseg; j++) { kivalasztott.Add(""); } } megjegyzesek.Text = megjegyzes; for (int i = 0; i < adatTipusok.Count - 2; i++) { var index = dataGridView1.Rows.Add(); dataGridView1.Rows[index].Cells[0].Value = adatTipusok[i]; dataGridView1.Rows[index].Cells[1].Value = kivalasztott[i]; } try { dataGridView1.Rows[0].ReadOnly = true; dataGridView1.Columns[0].ReadOnly = true; dataGridView1.Rows[0].DefaultCellStyle.BackColor = Color.FromArgb(224, 224, 224); dataGridView1.Rows[0].DefaultCellStyle.SelectionBackColor = Color.FromArgb(224, 224, 224); dataGridView1.Rows[0].DefaultCellStyle.SelectionForeColor = Color.Black; } catch { MessageBox.Show("Üres a fájl!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); Visible = false; return(sikerült); } } sikerült = true; BringToFront(); Show(); return(sikerült); }
public void setDefault() { excelHelye.Text = Properties.Settings.Default.ExcelFajlHelye; mentesHelye.Text = Properties.Settings.Default.KeszWord; nyissaEMeg.Checked = Properties.Settings.Default.wordMegnyitasa; ekezetek.Checked = Properties.Settings.Default.ekezetek; szokoz.Checked = Properties.Settings.Default.szokoz; helyIdo.Checked = Properties.Settings.Default.helyIdo; honapBetu.Checked = Properties.Settings.Default.honapBetu; ujTanuloIdo.Checked = Properties.Settings.Default.ujTanuloIdo; kiallitasiHely.Text = Properties.Settings.Default.kiallitasiHely; frissites.Visible = ExcelOldalNevek.Visible; comboBox1.SelectedIndex = Properties.Settings.Default.comboIndex; iskolaAzonosito.Text = Properties.Settings.Default.iskolaAzonosito; iskolaNev.Text = Properties.Settings.Default.iskolaNev; iskolaCim.Text = Properties.Settings.Default.iskolaCim; DocTipus.SelectedIndex = Properties.Settings.Default.dokumentumTipus; fileFormat.SelectedIndex = Properties.Settings.Default.fileFormat; staticLoading.Hide(); loading1.Hide(); statisztika1.Hide(); tanuloAdatok1.Hide(); panel1.Visible = false; panel5.Visible = false; AllowDrop = true; DragEnter += new DragEventHandler(Form1_DragEnter); DragDrop += new DragEventHandler(Form1_DragDrop); VersionDisplay.Text = System.Windows.Forms.Application.ProductVersion; //DateTime sometimes can fail on somemachines so this code disable all things that's using DateTime try { string ido = DateTime.Now.ToString("MM/dd/yyyy"); ido.Substring(8, 4); ujTanuloIdo.Enabled = true; ujTanuloIdo.Visible = true; helyIdo.Enabled = true; helyIdo.Visible = true; } catch { Properties.Settings.Default.ujTanuloIdo = false; ujTanuloIdo.Checked = false; ujTanuloIdo.Enabled = false; ujTanuloIdo.Visible = false; Properties.Settings.Default.helyIdo = false; helyIdo.Checked = false; helyIdo.Enabled = false; helyIdo.Visible = false; } Properties.Settings.Default.Save(); if (FileMethods.IsExcelComptaible(Properties.Settings.Default.ExcelFajlHelye)) { try { FileMethods.FajlOlvasas(); } catch (Exception) { excelHelye.Text = ""; Properties.Settings.Default.ExcelFajlHelye = ""; return; } ExcelOldalNevek.Visible = true; frissites.Visible = true; ListaJelenites(); } else { ExcelOldalNevek.Visible = false; frissites.Visible = false; } Region = System.Drawing.Region.FromHrgn(CreateRoundRectRgn(0, 0, Width, Height, 20, 20)); }
private void valaszt_Click_1(object sender, EventArgs e) { FileMethods.FajlOlvasas(); if (SorSzam.Text == "" || SorSzam.Text == null) { MessageBox.Show("Írj be nevet vagy sorszámot", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (excelHelye.Text == "" || excelHelye.Text == null) { MessageBox.Show("Válaszd ki az olvasni kívánt excel fájlt!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (mentesHelye.Text == "" || mentesHelye.Text == null) { MessageBox.Show("Válaszd ki a mentés helyét!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } staticLoading.Visible = true; staticLoading.BringToFront(); string kivalasztott = ""; if (Properties.Settings.Default.ExcelFajlHelye != null && SorSzam.Text != null) { if (Path.GetExtension(Properties.Settings.Default.ExcelFajlHelye) == ".csv") { try { var fs = new FileStream(Properties.Settings.Default.ExcelFajlHelye, FileMode.Open, FileAccess.Read, FileShare.ReadWrite); using (var Olvas = new StreamReader(fs, Encoding.Default)) { if (GeneralMethods.IsDigitOnly(SorSzam.Text)) { for (int i = 0; i <= (Convert.ToInt32(SorSzam.Text)); i++) { if (i == Convert.ToInt32(SorSzam.Text)) { string Sor = Olvas.ReadLine(); string[] Sorelemek = Sor.Split(';'); kivalasztott = Sorelemek[1]; } else { string nem = Olvas.ReadLine(); } } } if (!GeneralMethods.IsDigitOnly(SorSzam.Text)) { List <string> sorszamok = new List <string>(); var sorString = ""; string nev = SorSzam.Text.ToLower().Trim(); int count = 0; while (!Olvas.EndOfStream) { string sor = Olvas.ReadLine(); string[] Sorelemek = sor.Split(';'); string nev2 = Sorelemek[1].ToLower(); if (!ekezetek.Checked) { nev = GeneralMethods.RemoveDiacritics(nev); nev2 = GeneralMethods.RemoveDiacritics(nev2); } if (!szokoz.Checked) { nev = nev.Replace(" ", "").Replace("-", ""); nev2 = nev2.Replace(" ", "").Replace("-", ""); } nev = nev.Replace("dr.", ""); nev2 = nev2.Replace("dr.", ""); if (nev2.Contains("(")) { string[] ketNev = nev2.Split('('); nev2 = ketNev[0].Trim(); } if (nev == nev2) { sorszamok.Add(Sorelemek[0]); kivalasztott = Sorelemek[1]; count++; } } if (count > 1) { sorString = String.Join(", ", sorszamok.ToArray()); string uzenet = "Több ilyen nevű tanuló is van! Használd a sorszámát.\n(Azonos nevűek sorszáma: " + sorString + ")"; MessageBox.Show(uzenet, "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); kivalasztott = ""; } if (count == 0) { MessageBox.Show("Nincs találat az adott excel táblázatban. Ellenőrizd a beírt nevet!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } } } catch (Exception) { MessageBox.Show("Nem található a kiválasztott fájl.", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } if (FileMethods.IsExcelComptaible(Properties.Settings.Default.ExcelFajlHelye)) { string hely = Properties.Settings.Default.ExcelFajlMasolata; var xlWorkbook = xlWorkbooks.Open(Properties.Settings.Default.ExcelFajlMasolata); Excel.Worksheet xlWorksheet = xlWorkbook.Sheets[ExcelOldalNevek.SelectedIndex + 1]; Excel.Range xlRange = xlWorksheet.UsedRange; int totalRows = ExcelApp.GetMinimalUsedRangeAddress(xlWorksheet); int totalColumns = xlRange.Columns.Count; if (GeneralMethods.IsDigitOnly(SorSzam.Text)) { int szam = Convert.ToInt32(SorSzam.Text) + 1; kivalasztott = Convert.ToString(xlWorksheet.Cells[szam, 2].Text); } if (!GeneralMethods.IsDigitOnly(SorSzam.Text)) { List <string> sorszamok = new List <string>(); var sorString = ""; int count = 0; string nev = SorSzam.Text.ToLower().Trim(); for (int Row = 1; Row <= totalRows; Row++) { string nev2 = Convert.ToString(xlWorksheet.Cells[Row, 2].Text); if (nev2 == null) { nev2 = ""; } nev2 = nev2.ToLower(); if (!ekezetek.Checked) { nev = GeneralMethods.RemoveDiacritics(nev); nev2 = GeneralMethods.RemoveDiacritics(nev2); } if (!szokoz.Checked) { nev = nev.Replace(" ", "").Replace("-", ""); nev2 = nev2.Replace(" ", "").Replace("-", ""); } nev = nev.Replace("dr.", ""); nev2 = nev2.Replace("dr.", ""); if (nev2.Contains("(")) { string[] ketNev = nev2.Split('('); nev2 = ketNev[0].Trim(); } if (nev == nev2) { sorszamok.Add(Convert.ToString(xlWorksheet.Cells[Row, 1].Text)); kivalasztott = Convert.ToString(xlWorksheet.Cells[Row, 2].Text); count++; } } if (count > 1) { sorString = String.Join(", ", sorszamok.ToArray()); string uzenet = "Több ilyen nevű tanuló is van! Használd a sorszámát.\n(Azonos nevűek sorszáma: " + sorString + ")"; MessageBox.Show(uzenet, "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); kivalasztott = ""; } if (count == 0) { MessageBox.Show("Nincs találat. Ellenőrizd a beírt nevet!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } FileMethods.DisposeExcelInstance(xlWorkbook, xlWorksheet); } } if (kivalasztott.Contains("(")) { string[] ketNev = kivalasztott.Split('('); kivalasztott = ketNev[0].Trim(); } if (kivalasztott == null || kivalasztott == "") { mentettFajlNeve.Text = "Nincs találat"; } else { mentettFajlNeve.Text = (kivalasztott).Replace(' ', '_'); } Application.DoEvents(); staticLoading.Visible = false; }
public void AdatokListazas(string excelHelye) { if (excelHelye == "" || excelHelye == null) { MessageBox.Show("Válaszd ki az olvasni kívánt excel fájlt!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } dataGridView1.Rows.Clear(); dataGridView1.Refresh(); statisztikak.Rows.Clear(); statisztikak.Refresh(); bool elso = true; FileMethods.FajlOlvasas(); List <string> adatTipusok = new List <string>(); if (Properties.Settings.Default.ExcelFajlHelye != null) { if (Path.GetExtension(Properties.Settings.Default.ExcelFajlHelye) == ".csv") { try { var fs = new FileStream(Properties.Settings.Default.ExcelFajlHelye, FileMode.Open, FileAccess.Read, FileShare.ReadWrite); using (var Olvas = new StreamReader(fs, Encoding.Default)) { { string sor = Olvas.ReadLine(); if (sor == null) { MessageBox.Show("Üres a fájl", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); this.Visible = false; return; } if (elso == true) { string[] Sorelemek = sor.Split(';'); for (int j = 0; j < (Sorelemek.Length); j++) { adatTipusok.Add(Sorelemek[j]); elso = false; } } } } } catch (Exception) { MessageBox.Show("Nem található a kiválasztott fájl.", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); this.Visible = false; return; } } else if (FileMethods.IsExcelComptaible(Properties.Settings.Default.ExcelFajlHelye)) { FileMethods.FajlOlvasas(); var xlWorkbook = xlWorkbooks.Open(Properties.Settings.Default.ExcelFajlMasolata); Excel.Worksheet xlWorksheet = xlWorkbook.Sheets[Properties.Settings.Default.oldalszam + 1]; Excel.Range xlRange = xlWorksheet.UsedRange; int totalRows = ExcelApp.GetMinimalUsedRangeAddress(xlWorksheet); int totalColumns = xlRange.Columns.Count; if (elso == true) { int szam = 1; var sb = new StringBuilder(); for (int ColumnNum = 1; ColumnNum <= totalColumns + 1; ColumnNum++) { string row = Convert.ToString(xlWorksheet.Cells[szam, ColumnNum].Text); if (row == null) { row = ""; } sb.Append("đ"); sb.Append(row); } string[] Sorelemek = sb.ToString().Split('đ'); for (int j = 1; j < Sorelemek.Length; j++) { adatTipusok.Add(Sorelemek[j]); //string test = Sorelemek[j]; } } FileMethods.DisposeExcelInstance(xlWorkbook, xlWorksheet); } for (int i = 0; i < adatTipusok.Count - 2; i++) { var index = dataGridView1.Rows.Add(); dataGridView1.Rows[index].Cells[0].Value = adatTipusok[i]; } if (dataGridView1.Rows.Count == 0) { MessageBox.Show("Üres a fájl!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); this.Visible = false; return; } } this.BringToFront(); this.Show(); return; }
private void StatList_Click(object sender, EventArgs e) { if (dataGridView1.CurrentCell == null) { MessageBox.Show("Válassz adattípust!", "Figyelmeztetés", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } staticLoading.BringToFront(); staticLoading.Show(); statList.Enabled = false; int index = dataGridView1.CurrentCell.RowIndex; adatTipus = Convert.ToString(dataGridView1.CurrentCell.Value); statisztikak.Rows.Clear(); dataGridView1.Refresh(); List <string> adatok = new List <string>(); List <double> db = new List <double>(); adatok.Add("Hiányos adat"); db.Add(0); double totalRows = 0; if (FileMethods.IsExcelComptaible(Properties.Settings.Default.ExcelFajlHelye)) { var xlWorkbook = xlWorkbooks.Open(Properties.Settings.Default.ExcelFajlMasolata); Excel.Worksheet xlWorksheet = xlWorkbook.Sheets[Properties.Settings.Default.oldalszam + 1]; Excel.Range xlRange = xlWorksheet.UsedRange; totalRows = ExcelApp.GetMinimalUsedRangeAddress(xlWorksheet); int totalColumns = xlRange.Columns.Count - 1; for (int i = 2; i < totalRows; i++) { bool vanE = false; string data = Convert.ToString(xlWorksheet.Cells[i, index + 1].Text); if (data == null || data == "") { db[0]++; continue; } for (int j = 0; j < adatok.Count; j++) { if (data == adatok[j]) { db[j]++; vanE = true; break; } } if (vanE == false) { adatok.Add(data); db.Add(1); } } totalRows--; FileMethods.DisposeExcelInstance(xlWorkbook, xlWorksheet); } if (Path.GetExtension(Properties.Settings.Default.ExcelFajlHelye) == ".csv") { StreamReader olvas = new StreamReader(Properties.Settings.Default.ExcelFajlHelye, Encoding.Default); string fejlec = olvas.ReadLine(); while (!olvas.EndOfStream) { totalRows++; string sor = olvas.ReadLine(); string[] sorelemek = sor.Split(';'); string data = sorelemek[index]; bool vanE = false; if (data == null || data == "") { db[0]++; continue; } for (int j = 0; j < adatok.Count; j++) { if (data == adatok[j]) { db[j]++; vanE = true; break; } } if (vanE == false) { adatok.Add(data); db.Add(1); } } } List <AdatDB> adatLista = new List <AdatDB>(); for (int i = 1; i < adatok.Count; i++) { adatLista.Add(new AdatDB(adatok[i], db[i])); } adatLista = adatLista.OrderByDescending(item => item.Db).ToList(); for (int i = 0; i < adatLista.Count; i++) { int row = statisztikak.Rows.Add(); statisztikak.Rows[row].Cells[0].Value = adatLista[i].Adat; statisztikak.Rows[row].Cells[1].Value = adatLista[i].Db; double szamitas = (adatLista[i].Db / totalRows) * 100d; double szazalek = Math.Round(szamitas, 2); statisztikak.Rows[row].Cells[2].Value = szazalek + "%"; } if (db[0] != 0) { int utolsoSor = statisztikak.Rows.Add(); statisztikak.Rows[utolsoSor].Cells[0].Value = adatok[0]; statisztikak.Rows[utolsoSor].Cells[1].Value = db[0]; double sz = (db[0] / totalRows) * 100d; double er = Math.Round(sz, 2); statisztikak.Rows[utolsoSor].Cells[2].Value = er + "%"; } statList.Enabled = true; staticLoading.Hide(); }