Сравнение 2 ячеек из одного столбца в определенном столбце экспортированного листа excel с использованием WPF
Мне нужно экспортировать MySQL dataTable с помощью wpf в лист Excel, что и делается .
Я хочу сравнить ячейку 1 "A1" с ячейкой 2 "A2" в конкретном столбце A и удалить вторую, если она имеет то же значение, что и первая .
Моя проблема заключается в том,что код сравнивает все ячейки столбца A,B,C, D, в то время как я хочу сравнить только в 1 конкретном столбце A !
Спасибо вам за помощь .
Что я уже пробовал:
это только код экспорта :
private void export_Click(object sender, RoutedEventArgs e) { using (var conx = new MySqlConnection(constring)) { conn.Open(); //// extraction excel string Mysql = null; string data = null; int i = 0; int j = 0; Excel.Application xlApp; Excel.Workbook xlWorkBook; Excel.Worksheet xlWorkSheet; object misValue = System.Reflection.Missing.Value; xlApp = new Excel.Application(); xlApp.Visible = true; xlWorkBook = xlApp.Workbooks.Add(misValue); xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); Mysql = "SELECT * from database.Table"; MySqlDataAdapter cmd = new MySqlDataAdapter(Mysql,conn); DataSet ds = new DataSet(); cmd.Fill(ds); for (i = 0; i <= ds.Tables[0].Rows.Count-1 ; i++) { for (j = 0; j <= ds.Tables[0].Columns.Count - 1; j++) { data = ds.Tables[0].Rows[i].ItemArray[j].ToString(); /// excel sheet start from A5 xlWorkSheet.Cells[ i+5, j+1] = data; } } } }
и я добавил этот сравнительный код в свой цикл экспорта :
for (i = 0; i <= ds.Tables[0].Rows.Count-1 ; i++) { for (j = 0; j <= ds.Tables[0].Columns.Count - 1; j++) { data = ds.Tables[0].Rows[i].ItemArray[j].ToString(); xlWorkSheet.Cells[ i+1, j+1] = data; //// My added comparing code try { if (xlWorkSheetCarteProd.Cells[i, j].Value == xlWorkSheetCarteProd.Cells[i + 1, j].Value) { xlWorkSheetCarteProd.Cells[i +1, j].Value = ""; } } catch{ } //////////////// } }